aboutsummaryrefslogtreecommitdiff
path: root/examples/http-server/connection-queue.tm
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-09-01 17:37:24 -0400
committerBruce Hill <bruce@bruce-hill.com>2025-09-01 17:37:24 -0400
commit12345a85d9c7d7a56ddf323247a4bdf347021b73 (patch)
tree93bafb42c1ec2c22cc2858936034901c39cbca82 /examples/http-server/connection-queue.tm
parentc778c8822f1c8acf981e26f7b860a384c94cff6f (diff)
parentadc2d81b5683e611c5f3289be6157d4519a60632 (diff)
Merge branch 'main' into optional-list-indexing
Diffstat (limited to 'examples/http-server/connection-queue.tm')
-rw-r--r--examples/http-server/connection-queue.tm25
1 files changed, 0 insertions, 25 deletions
diff --git a/examples/http-server/connection-queue.tm b/examples/http-server/connection-queue.tm
deleted file mode 100644
index c56069e1..00000000
--- a/examples/http-server/connection-queue.tm
+++ /dev/null
@@ -1,25 +0,0 @@
-use pthreads
-
-func _assert_success(name:Text, val:Int32; inline)
- fail("$name() failed!") if val < 0
-
-struct ConnectionQueue(_connections:@[Int32]=@[], _mutex=pthread_mutex_t.new(), _cond=pthread_cond_t.new())
- func enqueue(queue:ConnectionQueue, connection:Int32)
- queue._mutex.lock()
- queue._connections.insert(connection)
- queue._mutex.unlock()
- queue._cond.signal()
-
-
- func dequeue(queue:ConnectionQueue -> Int32)
- conn : Int32?
-
- queue._mutex.lock()
-
- while queue._connections.length == 0
- queue._cond.wait(queue._mutex)
-
- conn = queue._connections.pop(1)
- queue._mutex.unlock()
- queue._cond.signal()
- return conn!