From a0c94d970c586eb5e32755706cc4a64ace066516 Mon Sep 17 00:00:00 2001
From: j2-tulloch <james2.tulloch@live.uwe.ac.uk>
Date: Fri, 5 Jan 2024 14:48:45 +0000
Subject: [PATCH] Upload New File

---
 Assignment/Task 3/main.cpp | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 Assignment/Task 3/main.cpp

diff --git a/Assignment/Task 3/main.cpp b/Assignment/Task 3/main.cpp
new file mode 100644
index 0000000..616bcd7
--- /dev/null
+++ b/Assignment/Task 3/main.cpp	
@@ -0,0 +1,34 @@
+#include <iostream>
+#include "scheduler.h"
+
+scheduler s;
+
+int main() {
+    auto lambda1 = [](void* arg) {
+        fiber* f = static_cast<fiber*>(arg);
+        std::cout << "fiber 1 before" << std::endl;
+        f->finish();
+        f->yield();
+        std::cout << "fiber 1 after" << std::endl;
+        s.fiber_exit();
+    };
+
+    auto lambda2 = [](void* arg) {
+        fiber* f = static_cast<fiber*>(arg);
+        std::cout << "fiber 2" << std::endl;
+        f->finish();
+        s.fiber_exit();
+    };
+
+    fiber f1(lambda1, &f1);
+    fiber f2(lambda2, &f2);
+
+    s.spawn(&f1);
+    s.spawn(&f2);
+
+    s.do_it();
+
+    return 0;
+}
+
+
-- 
GitLab