aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanielGavin <danielgavin5@hotmail.com>2022-04-02 12:06:57 +0200
committerGitHub <noreply@github.com>2022-04-02 12:06:57 +0200
commitb0cd697758c2ea6661ca41fa76fcd2a344bf87b9 (patch)
tree0a6b40a74c8560812784805beefffd3cf2a88d0f
parent5d534e95132d8ad43a1895fa32c7ada8b5e54636 (diff)
parent05ccccdcb88eea83b13faeac6042de90f74c8f43 (diff)
Merge pull request #94 from Tetralux/fix-sync
Update to Odin core/sync
-rw-r--r--src/main.odin3
-rw-r--r--src/server/requests.odin12
-rw-r--r--src/server/writer.odin1
3 files changed, 6 insertions, 10 deletions
diff --git a/src/main.odin b/src/main.odin
index b30cd5b..567fb9c 100644
--- a/src/main.odin
+++ b/src/main.odin
@@ -49,9 +49,6 @@ run :: proc(reader: ^server.Reader, writer: ^server.Writer) {
writer = writer,
}
- sync.mutex_init(&server.requests_mutex)
- sync.semaphore_init(&server.requests_sempahore)
-
server.requests = make([dynamic]server.Request, context.allocator)
server.deletings = make([dynamic]server.Request, context.allocator)
diff --git a/src/server/requests.odin b/src/server/requests.odin
index 93fa01a..8ffaa97 100644
--- a/src/server/requests.odin
+++ b/src/server/requests.odin
@@ -87,7 +87,7 @@ Request :: struct {
}
-requests_sempahore: sync.Semaphore
+requests_sempahore: sync.Sema
requests_mutex: sync.Mutex
requests: [dynamic]Request
@@ -143,10 +143,10 @@ thread_request_main :: proc(data: rawptr) {
json.destroy_value(root)
} else if method in notification_map {
append(&requests, Request { value = root, is_notification = true})
- sync.semaphore_post(&requests_sempahore)
+ sync.sema_post(&requests_sempahore)
} else {
append(&requests, Request { id = id, value = root})
- sync.semaphore_post(&requests_sempahore)
+ sync.sema_post(&requests_sempahore)
}
sync.mutex_unlock(&requests_mutex)
@@ -314,10 +314,10 @@ consume_requests :: proc (config: ^common.Config, writer: ^Writer) -> bool {
sync.mutex_unlock(&requests_mutex)
if request_index != len(temp_requests) {
- sync.semaphore_post(&requests_sempahore)
+ sync.sema_post(&requests_sempahore)
}
- sync.semaphore_wait_for(&requests_sempahore)
+ sync.sema_wait(&requests_sempahore)
return true
}
@@ -1091,4 +1091,4 @@ request_rename :: proc (params: json.Value, id: RequestId, config: ^common.Confi
send_response(response, writer)
return .None
-} \ No newline at end of file
+}
diff --git a/src/server/writer.odin b/src/server/writer.odin
index 4918f81..ae26bee 100644
--- a/src/server/writer.odin
+++ b/src/server/writer.odin
@@ -16,7 +16,6 @@ Writer :: struct {
make_writer :: proc(writer_fn: WriterFn, writer_context: rawptr) -> Writer {
writer := Writer {writer_context = writer_context, writer_fn = writer_fn}
- sync.mutex_init(&writer.writer_mutex)
return writer
}