summaryrefslogtreecommitdiffstats
path: root/include/framework/scheduling
diff options
context:
space:
mode:
authorDouglas B. Rumbaugh <doug@douglasrumbaugh.com>2024-01-15 14:01:36 -0500
committerDouglas B. Rumbaugh <doug@douglasrumbaugh.com>2024-01-15 14:01:36 -0500
commitcf178ae74a76b780b655a447531d2114f9f81d98 (patch)
treec992a3209a650bb90540dd4449e1d8111f216458 /include/framework/scheduling
parentaac0bb661af8fae38d3ce08d6078cb4d9dfcb575 (diff)
downloaddynamic-extension-cf178ae74a76b780b655a447531d2114f9f81d98.tar.gz
Various single-threaded bug fixes
Diffstat (limited to 'include/framework/scheduling')
-rw-r--r--include/framework/scheduling/Epoch.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/framework/scheduling/Epoch.h b/include/framework/scheduling/Epoch.h
index ca85fe2..b005ff6 100644
--- a/include/framework/scheduling/Epoch.h
+++ b/include/framework/scheduling/Epoch.h
@@ -60,6 +60,16 @@ public:
}
}
+
+ /*
+ * Epochs are *not* copyable or movable. Only one can exist, and all users of
+ * it work with pointers
+ */
+ Epoch(const Epoch&) = delete;
+ Epoch(Epoch&&) = delete;
+ Epoch &operator=(const Epoch&) = delete;
+ Epoch &operator=(Epoch&&) = delete;
+
void start_job() {
m_active_jobs.fetch_add(1);
}
@@ -90,6 +100,10 @@ public:
return m_buffer->get_buffer_view();
}
+ BufView get_flush_buffer() {
+ return m_buffer->get_flush_buffer_view();
+ }
+
/*
* Returns a new Epoch object that is a copy of this one. The new object will also contain