1
0
mirror of https://github.com/Ylianst/MeshAgent synced 2025-12-10 13:23:41 +00:00

Fixed semaphores on MacOS

This commit is contained in:
Bryan Roe
2019-06-06 18:45:42 -07:00
parent 4f0fbc9581
commit 4a11c63b6c
2 changed files with 177 additions and 201 deletions

View File

@@ -137,7 +137,7 @@ struct sockaddr_in6;
#ifdef __APPLE__
#include <dispatch/dispatch.h>
#include <semaphore.h>
#define sem_t dispatch_semaphore_t
#define sem_init(x,pShared,InitValue) ILibDispatchSemaphore_Init((x), pShared, InitValue)
#define sem_destroy(x) ILibDispatchSemaphore_Destroy(x)
#define sem_wait(x) ILibDispatchSemaphore_wait(x)
@@ -918,10 +918,13 @@ int ILibIsRunningOnChainThread(void* chain);
\brief Chaining Methods
\{
*/
typedef void(*ILibChain_SignalHandler)(void *chain, int signum, void *user);
ILibExportMethod void *ILibCreateChain();
void *ILibCreateChainEx(int extraMemorySize);
void ILibAddToChain(void *chain, void *object);
void *ILibGetBaseTimer(void *chain);
int ILibChain_AddSignalHandler(void *chain, int signum, ILibChain_SignalHandler, void *user);
int ILibChain_RemoveSignalHandler(void *chain, int signum, ILibChain_SignalHandler, void *user);
void ILibChain_SafeAdd(void *chain, void *object);
void ILibChain_SafeRemove(void *chain, void *object);
void ILibChain_SafeRemoveEx(void *chain, void *object);