mirror of https://github.com/deavmi/eventy.git
Compare commits
3 Commits
6cfaa9824e
...
e75e3f732d
Author | SHA1 | Date |
---|---|---|
Tristan B. Velloza Kildaire | e75e3f732d | |
Tristan B. Velloza Kildaire | 4fed9fc780 | |
Tristan B. Velloza Kildaire | 5bbb6d804a |
|
@ -24,7 +24,9 @@ public struct EngineSettings
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Hold off mode
|
||||
*
|
||||
* Method to use for "sleeping" the event loop
|
||||
*/
|
||||
public enum HoldOffMode
|
||||
{
|
||||
|
|
|
@ -165,6 +165,7 @@ public final class Engine : Thread
|
|||
this(EngineSettings settings)
|
||||
{
|
||||
super(&run);
|
||||
|
||||
queueLock = new Mutex();
|
||||
handlerLock = new Mutex();
|
||||
threadStoreLock = new Mutex();
|
||||
|
@ -321,15 +322,17 @@ public final class Engine : Thread
|
|||
running = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Dispatch(Signal[] set, Event e)
|
||||
*
|
||||
* Creates a new thread per signal and dispatches the event to them
|
||||
*
|
||||
* TODO: Add ability to dispatch on this thread
|
||||
*/
|
||||
/**
|
||||
* Creates a new thread per signal and dispatches the event to them
|
||||
*
|
||||
* Params:
|
||||
* signalSet = The signal handlers to use for dispatching
|
||||
* e = the Event to be dispatched to each handler
|
||||
*/
|
||||
private void dispatch(Signal[] signalSet, Event e)
|
||||
{
|
||||
/* TODO: Add ability to dispatch on this thread */
|
||||
|
||||
foreach (Signal signal; signalSet)
|
||||
{
|
||||
/* Create a new Thread */
|
||||
|
@ -358,15 +361,20 @@ public final class Engine : Thread
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Store the thread
|
||||
*
|
||||
* TODO: This can only be implemented if we use
|
||||
* wrapper threads that exit, and we can signal
|
||||
* removal from thread store then
|
||||
*/
|
||||
/**
|
||||
* Adds a thread to the thread store
|
||||
*
|
||||
* Params:
|
||||
* t = the thread to add
|
||||
*/
|
||||
private void storeThread(DispatchWrapper t)
|
||||
{
|
||||
/**
|
||||
* TODO: This can only be implemented if we use
|
||||
* wrapper threads that exit, and we can signal
|
||||
* removal from thread store then
|
||||
*/
|
||||
|
||||
/* Lock the thread store from editing */
|
||||
threadStoreLock.lock();
|
||||
|
||||
|
|
|
@ -4,4 +4,5 @@ public import eventy.event;
|
|||
public import eventy.exceptions;
|
||||
public import eventy.engine;
|
||||
public import eventy.queues;
|
||||
public import eventy.signal;
|
||||
public import eventy.signal;
|
||||
public import eventy.config;
|
Loading…
Reference in New Issue