HANDLE CreateSemaphore(SECURITY_ATTRIBUTES *AttributDeSecurites, LONG CompteurInitial, LONG CompteurMax, LPCSTR NomSemaphore);
Un sémaphore sert à synchroniser plusieurs threads de plusieurs processus.
Le résultat est le handle sur le sémaphore.
#include <windows.h>
#include <winbase.h>
SECURITY_ATTRIBUTES AttributDeSecurites;
HANDLE hSemaphore;
AttributDeSecurites.nLength=sizeof(SECURITY_ATTRIBUTES);
AttributDeSecurites.lpSecurityDescriptor=NULL;
AttributDeSecurites.bInheritHandle=TRUE;
hSemaphore=CreateSemaphore(&AttributDeSecurites, 0, 1000, (LPCSTR)"MonSemaphore");
if (!hSemaphore)
{
...
}
...
CloseHandle(hSemaphore);
...