https://github.com/efmsoft/syncme
A cross-platform implementation of such synchronization objects as Notification / Synchronization Events, Waitable Timers, Socket Event, Thread, as well as functions for waiting for signaled state. The wait functions are analogues of WaitForSingleObject and WaitForMultileObjects used on Windows. the last one can wait for objects of different types.
https://github.com/efmsoft/syncme
semaphore socket-event synchronization-primitives thread-pool timer waitable-timer
Last synced: 3 months ago
JSON representation
A cross-platform implementation of such synchronization objects as Notification / Synchronization Events, Waitable Timers, Socket Event, Thread, as well as functions for waiting for signaled state. The wait functions are analogues of WaitForSingleObject and WaitForMultileObjects used on Windows. the last one can wait for objects of different types.
- Host: GitHub
- URL: https://github.com/efmsoft/syncme
- Owner: efmsoft
- Created: 2023-02-06T10:16:00.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-08-24T10:06:23.000Z (8 months ago)
- Last Synced: 2025-08-24T16:33:35.885Z (8 months ago)
- Topics: semaphore, socket-event, synchronization-primitives, thread-pool, timer, waitable-timer
- Language: C++
- Homepage:
- Size: 317 KB
- Stars: 1
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Syncme library
This library contains a cross-platform implementation of such synchronization objects as Notification Event, Synchronization Event, Waitable Timer, Socket Event, Thread, as well as functions for waiting for the transition of objects to a signaled state. To wait for the signaled state of objects, analogues of the functions used in Windows are used - WaitForSingleObject and WaitForMultipleObjects.
```
#include
using namespace Syncme;
...
HEvent timer = CreateManualResetTimer();
SetWaitableTimer(htimer, 1500, 0, nullptr);
auto rc = WaitForSingleObject(timer, FOREVER);
assert(rc == WAIT_RESULT::OBJECT_0);
```