Commit Graph

29 Commits

Author SHA1 Message Date
David DeSimone ca0a7f313e Changing AsyncTaskPool/Scheduler to better leverage move semantics (#17727)
* Changing CCAsyncTaskPool and CCScheduler to better leverage move semantics, to avoid several lambda copy constructor calls. Chaning call sites in the cocos engine to better leverage move semantics.

* Editing binding generator to not generate bindings for AsyncTaskPool::enqueue. Bindings were not previously generated for this function due to it's type signature involving a template parameter.

* Adding missing std::move call in AsyncTaskPool to skip a copy constructor call.
2017-05-08 13:39:17 +08:00
Dimon4eg a3cb7de101 Fix reschedule issue with same key (#17706)
* fix reschedule issue

* correct code formatting

* Fix isScheduled

* improve a bit performance of executing functions in cocos thread

* added test to verify reschedule issue

* re-init timer in schedule if timer exists and alive
2017-05-04 16:24:20 +08:00
j-jorge 67d16bee98 Prevent unexpected calls to unscheduled selector in long updates. (#17431)
If the delta time dt passed to cocos2d::Timer::update(float) is longer than the
interval of the timer, then the timer will be triggered several times even if
the selector is unscheduled during the call.

This commit adds a flag in cocos2d::Timer stop the update loop if the selector
has been unscheduled.
2017-03-07 11:16:30 +08:00
CocosRobot d07794052f Update license to 2017 (#17362)
* Typo: CopyRight -> Copyright

* Copyright update: chukong-inc.com -> Chukong Technologies Inc.

* [js files] Copyright update: 2014 -> 2014-2017

* [cpp files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2015 -> 2015-2017

* [js files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2016 -> 2016-2017

* Copyright update: 2013 -> 2013-2017

* Copyright update: 201?-201? -> 201?-2017

* License year fixes.

* Liscene year fix in CCRay.cpp

* Updates license years in CCGLProgramState.h & CCGLProgramStateCache.h
2017-02-14 14:36:57 +08:00
Nakhyun Choi 42c77247cc Fixed Scheduler bug occured when unschedule target during update. (#17203) 2017-01-18 16:32:36 +08:00
minggo d9637f30b0 remove scheduler in time (#17198)
* remove scheduler in time

* fix compiling error

* add test case

* fix logic error
2017-01-16 17:37:59 +08:00
David DeSimone 3b7ffcf5d0 unscheduleAll() does not unschedule scheduled with performFunctionInCocosThread. (#16856)
* Fixing issue where Scheduler::unscheduleAll() would not unschedule functions scheduled with Scheduler::performFunctionInCocosThread.

* Removing clear of _functionsToPerform from unscheduleAll, based on code review feedback. Adding a function removeAllFunctionsToBePerfomedInCocosThread, which will remove all pending functions scheduled with performFunctionOnCocosThread.

* Adding test case for Scheduler::removeAllFunctionsToBePerformedInCocosThread

* Adding proper cleanup code to Scheduler test for SchedulerRemoveAllFunctionsToBePerformedInCocosThread
2016-12-08 11:58:58 +08:00
James Chen b135d512d2 Update copyright to 2016. (#16311) 2016-08-05 09:42:15 +08:00
Wenhai Lin 4fa58602a8 Adds `std::nothrow` to the `new` statements 2015-12-16 14:02:55 +08:00
Martin Taylor 62e36e8006 fix typos and syntax error. A thorough check by tool VSSpellChecker. 2015-09-22 16:08:23 +08:00
pandamicro 724011f19b Merge pull request #12071 from waiter/v3
Fix a bug in Scheduler which may case Force Close
2015-09-18 21:39:36 +08:00
WenhaiLin 393af19237 [Node::scheduleOnce]Fixed the callback will be executed multiple times if the value of delay equal zero. 2015-08-26 23:41:48 +08:00
WenhaiLin d855722c20 Fixed `Scheduler::update` can lead to an infinite loop when the value of `dt` is zero. 2015-08-14 15:05:25 +08:00
Vincent Yang d333d24177 Fix bug: timer dt time error when interval = 0. 2015-08-13 12:55:07 +08:00
Vincent Yang bb0a7a8533 fix bug: #21906 Pause/Resume 's result not correct. 2015-08-11 14:28:52 +08:00
Vincent Yang d0a5c02399 fix bug: #21906 Pause/Resume 's result not correct. 2015-08-10 17:58:49 +08:00
andyque 91dfb07a8c add more descriptive message to ASSET macro. 2015-07-14 15:28:36 +08:00
waiter 67a323e14a Fix a bug in Scheduler which may case Force Close
Fix a bug in Scheduler which may case Force Close
2015-05-28 10:53:46 +08:00
WenhaiLin d9bb6192dc Fixed may access wrong memory in Scheduler::schedule 2015-01-27 17:29:12 +08:00
Eric Zhong 36e44dbaf9 set default priority to avoid warning
when call 'scheduleUpdate' and 'unscheuleUpdate' several times in one frame, it will get warning "warning: you CANNOT change update priority in scheduled function"
2014-11-18 22:05:56 +08:00
Ricardo Quesada 342d934a0e scheduler and macro fixes
* kRepeatForever -> CC_REPEAT_FOREVER
* schedule_selector -> CC_SCHEDULE_SELECTOR
* [new] Node::schedule(const std::function<>& callback, const std::string &key)

Updates all smaples
2014-10-03 09:38:36 -07:00
Ricardo Quesada 3dda35b4ef Adds `std::nothrow` to `new`
Since cocos2d-x doesn't support exceptions, it is important to add
`std::nothrow` to all the `new` statements
2014-08-27 16:31:57 -07:00
boyu0 56590f09eb change comment. 2014-05-30 17:40:35 +08:00
boyu0 dd0771852f change comment. 2014-05-30 17:36:54 +08:00
boyu0 5e62c4e069 closed #5392: add comment for unscheduleUpdate() at schedulePerFrame() 2014-05-29 15:16:11 +08:00
boyu0 91db87a2f6 closed #5392: add priority check for schedulePerFrame() and add a ScheduleUpdatePriority test. 2014-05-29 13:51:43 +08:00
Ricardo Quesada 0f67247325 Squashed commit of the following:
commit a794d107ad85667e3d754f0b6251fc864dfbf288
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 14:33:49 2014 -0700

    Yeah... everything compiles on win32 and wp8

commit 4740be6e4a0d16f742c27996e7ab2c100adc76af
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 13:58:38 2014 -0700

    CCIME moved to base

    and compiles on Android

commit ff3e1bf1eb27a01019f4e1b56d1aebbe2d385f72
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 13:02:57 2014 -0700

    compiles Ok for Windows Phone 8

commit 8160a4eb2ecdc61b5bd1cf56b90d2da6f11e3ebd
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 12:25:31 2014 -0700

    fixes for Windows Phone 8

commit 418197649efc93032aee0adc205e502101cdb53d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 11:15:13 2014 -0700

    Compiles on Win32

commit 08813ed7cf8ac1079ffadeb1ce78ea9e833e1a33
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 10:08:31 2014 -0700

    Compiles on linux!

commit 118896521e5b335a5257090b6863f1fb2a2002fe
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 09:30:42 2014 -0700

    moves cocos/2d/platform -> cocos/platform

commit 4fe9319d7717b0c1bccb2db0156eeb86255a89e0
Merge: bd68ec2 511295e
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 08:24:41 2014 -0700

    Merge remote-tracking branch 'cocos2d/v3' into files

commit bd68ec2f0e3a826d8b2f4b60564ba65ce766bc56
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu May 15 19:36:23 2014 -0700

    files in the correct directory
2014-05-16 14:36:00 -07:00
Ricardo Quesada 40fe815ab9 Squashed commit of the following:
commit c16dcfaaea0922039aad05bce1f4efed18e04871
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:05:18 2014 -0700

    more linux fixes

commit 1553795976c9090a1b46deb53d12910fe0676008
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:04:04 2014 -0700

    more linux fixes

commit 1e43a8cabff33cbf25aa5eb5412f53a878222d83
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:02:07 2014 -0700

    fixes linux isuses

commit 723a445dd6411f91846da2b801248ad8298174f1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:58:50 2014 -0700

    more linux fixes

commit 533c8025e794fc76cef02f396b3a93b3d7f4cfc8
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:57:33 2014 -0700

    more linux fixes

commit 4ba1e84959670bcbf044f18d1c0d4b3cb3be4090
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:53:43 2014 -0700

    more linux fixes

commit 1f8e011f306a47ed4134224e5e349929201f0539
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:49:28 2014 -0700

    more linux fixes

commit 3e2033100822ff6d532a1b4f012337491dc11920
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:47:43 2014 -0700

    more linux fixes

commit 2e708863c75fd032f1b2396dfdf1d31f7a62b713
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:46:00 2014 -0700

    more linux fixes

commit 861b5b92a6efd4de7b926c20d636ce9d749b293f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:43:15 2014 -0700

    more linux fixes

commit 2a43365a0c1755e9b9cada53301be1a20adb31cf
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:36:06 2014 -0700

    more fixes for linux

commit 7d332bf911892f87c7824d2a5da7bf73ce7ec411
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:35:29 2014 -0700

    more fixes for linux

commit f1becc17d3316dfe3678c23c9dcedb7a447d9235
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:34:44 2014 -0700

    more fixes for linux

commit d2e5959bb0dde921dd5e73be1d8acc3b3f50e51d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:33:45 2014 -0700

    fixes for linux

commit ad9b633c352107cf0e8b060a0e23d6e6a3f5e80f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:16:48 2014 -0700

    compiles on Windows

commit 4425ee8e5de8f42a2d6050e4470109600dce8b5d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:07:20 2014 -0700

    fix builder
2014-04-30 19:09:13 -07:00
Ricardo Quesada 8bb8416c26 Improved directory structure 2014-04-29 17:37:36 -07:00