diff options
| author | Aldrik Ramaekers <aldrikboy@gmail.com> | 2024-11-23 22:33:43 +0100 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrikboy@gmail.com> | 2024-11-23 22:33:43 +0100 |
| commit | b1e857cf1471d1871a9396696b22fa531da98249 (patch) | |
| tree | 3923008a8653057698cb339faf6dcfa92e18364b /project-base/tests/test_threads.c | |
| parent | 106bb7fcadf637cec883648916cc8d19529d6199 (diff) | |
add projbase to repo
Diffstat (limited to 'project-base/tests/test_threads.c')
| -rw-r--r-- | project-base/tests/test_threads.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/project-base/tests/test_threads.c b/project-base/tests/test_threads.c new file mode 100644 index 0000000..869afdf --- /dev/null +++ b/project-base/tests/test_threads.c @@ -0,0 +1,32 @@ + +volatile s32 val = 0; + +static void* test_t(void *args) { + thread_sleep(2000); + val = 50; +} + +s32 test_detached_thread(int argc, char** argv) { + platform_init(argc, argv, CONFIG_DIRECTORY); + + val = 0; + thread t = thread_start(test_t, 0); + thread_detach(&t); + error_if(val == 50); + thread_stop(&t); + + platform_destroy(); + success; +} + +s32 test_joined_thread(int argc, char** argv) { + platform_init(argc, argv, CONFIG_DIRECTORY); + + val = 0; + thread t = thread_start(test_t, 0); + thread_join(&t); + error_if(val != 50); + + platform_destroy(); + success; +}
\ No newline at end of file |
