1
0
mirror of https://github.com/deavmi/eventy.git synced 2024-07-27 08:30:28 +02:00
Commit Graph

65 Commits

Author SHA1 Message Date
86cfbdba83
Update README.md 2023-03-25 22:44:43 +02:00
999681cc01
Create d.yml 2023-03-25 22:44:06 +02:00
8d75e21055 Updated 2022-11-28 18:56:25 +02:00
0b56db2567 Added missing links 2022-11-28 18:53:46 +02:00
c70fa62d22 Updated .gitignore 2022-11-28 13:39:29 +02:00
7621ee5343 Completely overhauled Eventy system for the v0.4.0 release
Removed the event-loop for a better system (for now) whereby we just dispatch signal handlers on the call to `push(Event)`.

In a future release I hope to bring the event loop back but in a signal-based manner, such that we can support deferred events and priorities and such
2022-11-28 13:39:06 +02:00
6392c92349 Cleaned up 2022-11-26 18:39:00 +02:00
28d64f799e Switch back to YIELD HoldOffMode for now (gives best performance)
We will have to investigate load average highness and ways to deal with it later
2022-11-26 18:19:21 +02:00
cc75eefa15 Try 50ms 2022-11-26 18:16:07 +02:00
e75e3f732d Added missing eventy.config import to the package.d module 2022-11-26 18:00:24 +02:00
4fed9fc780 Added missing comment to config.d 2022-11-26 17:58:15 +02:00
5bbb6d804a Added last missing doc header to a method in engine.d 2022-11-26 17:43:44 +02:00
6cfaa9824e Added missing comments 2022-11-26 17:37:38 +02:00
00b8eb82be Removed redundant imports 2022-11-26 17:36:11 +02:00
a501de15d3 Removed commented out code
Moved testing imports within each unit test

Added a new unit test which tests the yield-based HoldOffMode

Neteaned up imports
2022-11-26 17:31:03 +02:00
59d0253b61 Implemented agressiveTryLock check so the user can choose whether or not to yield if a fail to grab the lock occurs 2022-11-26 17:26:05 +02:00
3603c567e8 Removed deprecated setSleep(Duration)
Added `getConfig()/setConfig(EngineSettings)` to retrieve and update the configuration of the Engine on the fly

Privated `getTypes()` method for now as it is not implemented yet
2022-11-26 17:23:40 +02:00
be44514a51 Cleaned up shutdown() and added some TODOs 2022-11-26 17:14:20 +02:00
e8b78156b7 Added support for graceful shutdown 2022-11-26 17:12:41 +02:00
490cfe85d6 Implemented hasPendingEvents() to check whether there are any pending events at all
Use `isPendingEvents()` is unit tests to ensure that we actually are able to see ALL events pushed dispatched before we, possibly, pre-maturely shutdown the engine with `shutdown()`

Removed unused function `runner(Event)`

Added new commented out test case

Formatted method documentation of some methods to conform to D's style
2022-11-26 17:07:17 +02:00
03dfe3ccfd Removed TODO comment
Added configuration system

Introduced two modes of "sleeping" the event loop, sleep-based and yield-based (with 200ms sleep-mode as the default)

Disabled `setSleep(Duration)` for now
2022-11-26 16:52:21 +02:00
b67f61b848 Added isSignalExists(ulong id) to check whether a signal handler exists for a given event id 2022-05-26 14:04:34 +02:00
263188fa64 Remove todo that has since been completed 2022-05-19 16:50:56 +02:00
d0c4d12155 Make unit testing method private within module 2022-05-19 16:49:52 +02:00
9a26ed7011 Removed swear words 2022-05-19 16:49:25 +02:00
c6082f3941 Unit test: Shutdown engine after testing 2022-05-19 16:48:09 +02:00
692660772a Added rudimentary shutdown() method 2022-04-07 10:11:59 +02:00
ea1e317431 Updated README 2022-01-16 15:02:01 +02:00
f2f79e1cf8 Updated documentation 2022-01-16 14:56:26 +02:00
f649a63a77 Re-worked event system 2022-01-16 14:32:00 +02:00
f1a13623a6 Added comment 2022-01-16 14:22:18 +02:00
c2bc5bc902 Added optional payload support 2022-01-16 14:21:09 +02:00
Tristan B. Kildaire
72a35976e1 Added a Javadoc 2021-12-27 13:04:30 +02:00
Tristan B. Kildaire
3e826aa1ac Added a Javadoc 2021-12-27 13:03:55 +02:00
Tristan B. Kildaire
f87a7f44ca Added some Javadocs 2021-12-27 13:02:32 +02:00
d2e9f5376c New logo 2021-12-27 12:29:47 +02:00
Tristan B. Kildaire
e6c18021bc
Delete libeventdisp.a 2021-12-27 12:22:58 +02:00
9cc4de215c Made public 2021-09-15 14:55:11 +02:00
a86ff8fda2 Cleaned up 2021-09-15 14:54:59 +02:00
e7c913bc10 Added README (WIP) 2021-09-08 13:01:39 +02:00
fa9b827711 New logo 2021-09-08 13:01:34 +02:00
77774a73e1 Added logo 2021-09-08 12:55:10 +02:00
c1c4225800 Create package.d 2021-09-08 12:51:53 +02:00
179203caef Updated dub information 2021-09-08 12:42:58 +02:00
15bc5d5b7e Updated licensing information 2021-09-08 12:42:55 +02:00
b4d117d721 Added igitignore 2021-09-08 12:40:08 +02:00
7b835b39de Fixed error where no queues could be added 2021-09-08 12:39:40 +02:00
206775937e Added missing exception definition 2021-09-08 12:37:29 +02:00
ca61e7a8e1 Use ~ opAssign operator instead 2021-09-08 12:37:20 +02:00
f5ed565912 Don't waste time spinning on a mutex that cannot be unlocked, yield as it may be unlocked by another process, if not then whenever we get back here try again (repeat if same result), else fall through with lock, execute event loop, unlock and yield (as per normal) 2021-09-07 14:12:31 +02:00