54 Commits

Author SHA1 Message Date
SOFe
9902d29734 ServerScheduler::scheduleAsyncTask() returns the worker used (#1312) 2017-08-29 10:29:24 +01:00
Dylan K. Taylor
57e7c3d91f Missed one 2017-07-15 13:30:02 +01:00
Dylan K. Taylor
c3b8be3f60 and more typehints 2017-07-14 10:56:51 +01:00
Dylan K. Taylor
8fc1501e89 Moar typehints 2017-07-14 08:52:27 +01:00
Dylan K. Taylor
51b0673b4b Bite the bullet and enable strict types on everything 2017-06-07 12:53:16 +01:00
Dylan K. Taylor
b28e38ab26 Move some exceptions out of utils into their relevant namespaces, move some Chunk methods to ChunkUtils for I/O, refactor "colour" -> "color" 2017-01-15 11:31:12 +00:00
SOFe
175dd0efa6 PhpStorm inspections
Fixed some minor bugs and dropped some obsolete code

pocketmine\level\generator namespace is ignored in this commit
2016-12-14 21:49:35 +00:00
SOFe
da23568546
Disallow scheduling the same AsyncTask instance more than once 2016-11-20 01:12:38 +08:00
SOFe
37ae760417
Fixed crashes after scheduleAsyncTaskToWorker() calls 2016-11-13 18:32:11 +08:00
SOFe
8404ce88bd
Fixed pthreads crashes with progressUpdates 2016-11-12 18:30:55 +08:00
SOFe
e6485c4734
Added AsyncTask progress update API 2016-11-12 17:31:59 +08:00
SOFe
074583d104 Builtin thread-local object storage for AsyncTask (#1)
* Added AsyncTask::fetchLocal()
2016-11-06 22:02:53 +08:00
SOF3
6fc435da0e
Imports rearrangement 2016-10-03 00:43:46 +08:00
Shoghi Cervantes
0bcf639a98 Changed how exceptions work and are logged, throw proper exceptions on tasks 2015-09-18 12:03:24 +02:00
Shoghi Cervantes
e137ac4c56 Base PHP7 work to make it "run" - READ NEXT LINES!
All plugins will need to bump the API if they want to use this.
NOTE THAT THIS IS NOT THE FINAL API 2.0.0 AND THAT THERE WILL BE MORE CHANGES.
To start updating, you might also want to read https://secure.php.net/manual/en/migration70.php and specifically https://secure.php.net/manual/en/migration70.incompatible.php

To compile PHP7 with some of the required dependencies, use https://gist.github.com/shoghicp/166ab26ce5cc7a390f45
ONLY LINUX IS TESTED, DO NOT ASK FOR OTHER PLATFORMS!

----- THIS VERSION IS NOT SUPPORTED -----

This version WILL crash randomly in unexpected places due to PHP7, pthreads, PocketMine or cosmic rays.

Handle with care, and store under direct sunlight for the best performance.
2015-09-10 21:29:29 +02:00
Shoghi Cervantes
cde2d39029
New statistics system 2015-05-21 11:41:11 +02:00
Shoghi Cervantes
7ad98d4659 Deprecated CallbackTask, moved sleep checking to level 2015-04-25 17:28:30 +02:00
Shoghi Cervantes
b2c25eaf36
Added MemoryManager, new memory properties, improved performance, updated RakLib, fixed misc. bugs 2015-04-18 20:13:52 +02:00
Shoghi Cervantes
08f2b7f291
Moved chunk population to async tasks, and no more cut trees! 2015-03-27 01:57:08 +01:00
Shoghi Cervantes
8e3667c95b
Fixed messages and default settings 2015-01-03 02:56:46 +01:00
Shoghi Cervantes
692045d714
Improved threading and resource usage, new defaults 2015-01-02 18:46:39 +01:00
Shoghi Cervantes
747f7685e7 Fix formatting issues due to bad IDE settings 2014-12-07 16:30:04 +01:00
Shoghi Cervantes
4a90ac270f Improved exception handling and debugging 2014-11-22 13:52:36 +01:00
Shoghi Cervantes
66acb5cdd7 Possible fix for crashing server not stopping 2014-10-31 23:10:12 +01:00
Shoghi Cervantes
8c4faa8622 Added extra Exceptions 2014-10-28 21:07:12 +01:00
Shoghi Cervantes
ebb844fa52 Removed unused code, fixed undefined variables 2014-10-11 22:22:51 +02:00
Shoghi Cervantes
7f85e37540 Worked on scheduler 2014-10-11 16:36:38 +02:00
Shoghi Cervantes
baf06dc363 Revert "Use Collectable class on AsyncTask, removed task collection workaround on ServerScheduler"
This reverts commit 0dba14074a634e82539735c3be88c6ae31b0be05.
2014-10-11 00:03:46 +02:00
Shoghi Cervantes
0dba14074a Use Collectable class on AsyncTask, removed task collection workaround on ServerScheduler 2014-10-10 20:53:28 +02:00
Shoghi Cervantes
3e1ea23036 Fixed CallbackTask name 2014-09-19 09:46:38 +02:00
Shoghi Cervantes
d312d2a143 Possible fix for #2046, removed embedded class names 2014-09-19 09:44:58 +02:00
Shoghi Cervantes
dea4513c34 Possible fix for #2041 2014-09-03 11:55:49 +02:00
Shoghi Cervantes
11f684d803 Improved CallbackTask timings data 2014-09-01 12:44:52 +02:00
Shoghi Cervantes
db7222976e Code cleanup 2014-08-21 17:26:41 +02:00
Shoghi Cervantes
e97139919a Added new exception when a plugin creates an orphaned PluginTask 2014-07-28 20:28:50 +02:00
Shoghi Cervantes
6c442551f7 Fixed client crashing (temp.), fixed clients not spawning. (Fixes #1640 #1636 #1590 #1573) 2014-07-14 02:19:14 +02:00
Shoghi Cervantes
a7944502cd Added small things 2014-07-12 19:27:51 +02:00
Shoghi Cervantes
9bdd294a66 Implemented global, tasks timings 2014-07-12 14:09:29 +02:00
Shoghi Cervantes
f2fa13119a Added upload/download speed on title bar, referenced ChunkRequestTask 2014-07-11 02:23:40 +02:00
Shoghi Cervantes
981796fd4c Fixed #1583 not repeated Tasks getting repeated 2014-07-09 20:07:35 +02:00
Shoghi Cervantes
637d9da5a6 Fixed worker pool AsyncTask storage 2014-07-05 22:02:14 +02:00
Shoghi Cervantes
22552cdd72 Improved chunk sending, moved chunk encoding and compression to another thread 2014-07-05 20:41:44 +02:00
Shoghi Cervantes
8b2440ff96 Fixed ServerScheduler::addTask() period 2014-07-03 19:35:59 +02:00
Shoghi Cervantes
9877271d70 Fixed kick messages 2014-06-25 20:50:16 +02:00
Shoghi Cervantes
80aebf2932 Added AsyncTask::onCompletion() 2014-06-25 13:01:39 +02:00
Shoghi Cervantes
bf49cafeae Added settings.async-workers to tune the amount of AsyncTask workers 2014-06-22 12:55:08 +02:00
Shoghi Cervantes
7f795bc041 Fixed #1501 executing AsyncTasks blocks other threads 2014-06-22 12:50:24 +02:00
Shoghi Cervantes
160c633c08 Updated trigger_error to Exceptions, fixed bug in Plugin task deletion 2014-05-26 12:22:28 +02:00
Shoghi Cervantes
53749483c3 Implemented new Inventory windows on Player, Chest and Furnace 2014-05-23 20:53:06 +02:00
Shoghi Cervantes
6cbd39de9b Added Inventory interfaces and types, updated long array() to [] 2014-05-22 18:59:16 +02:00