|
|
|
|
SemaphoreStart (Function) In french: SémaphoreDébut Locks the current thread until the semaphore is opened (which means until a "free" spot becomes available in the protected section). Reminder: Semaphores are used to define a protected code section that can only be run by a specific number of threads. Syntax
<Result> = SemaphoreStart(<Semaphore name> [, <Maximum timeout>])
<Result>: Boolean - True if the thread is allowed to enter in the code section,
- False otherwise (maximum duration reached).
<Semaphore name>: Character string Name of semaphore to use. If the semaphore does not exist, it is created with the default options (see SemaphoreCreate) <Maximum timeout>: Optional integer or optional duration Maximum timeout in hundredths of a second. - At the end of the specified duration, if the thread did not receive the authorization, <Result> is set to False.
- If this parameter is not specified or if it corresponds to the Infinite constant, the wait is infinite.
- If this parameter is set to 0, <Result> corresponds to the status of the semaphore. The thread is not pending.
This parameter can be: - an integer corresponding to the number of hundredths of a second,
- a Duration variable,
- the duration in a readable format (e.g., 1 s or 10 ms).
Remarks SemaphoreStart("SemaphoreName")
is equivalent to: CriticalSectionStart("MyCriticalSection")
By default, SemaphoreStart creates a semaphore limited to a single thread.
This page is also available for…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|