diff options
Diffstat (limited to 'src/systemc/core/scheduler.hh')
-rw-r--r-- | src/systemc/core/scheduler.hh | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/systemc/core/scheduler.hh b/src/systemc/core/scheduler.hh index 63f6ac35d..b576bec00 100644 --- a/src/systemc/core/scheduler.hh +++ b/src/systemc/core/scheduler.hh @@ -32,6 +32,7 @@ #include <functional> #include <map> +#include <mutex> #include <set> #include <vector> @@ -191,6 +192,8 @@ class Scheduler // Schedule an update for a given channel. void requestUpdate(Channel *c); + // Same as above, but may be called from a different thread. + void asyncRequestUpdate(Channel *c); // Run the given process immediately, preempting whatever may be running. void @@ -481,6 +484,9 @@ class Scheduler ChannelList updateList; + ChannelList asyncUpdateList; + std::mutex asyncListMutex; + std::map<::Event *, Tick> eventsToSchedule; std::set<TraceFile *> traceFiles; |