PC SOFT

ONLINE HELP
FOR WINDEV, WEBDEV AND WINDEV MOBILE

Home | Sign in | English US
New WINDEV, WEBDEV, WINDEV Mobile 24 feature!
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Locks the current thread while waiting for the specified event to open.
Versions 19 and later
iPhone/iPad This function is now available for iPhone/iPad applications.
WINDEVLinux This function is now available for the WINDEV applications in Linux.
WEBDEV - Server codeLinux This function is now available for the WEBDEV sites in Linux.
New in version 19
iPhone/iPad This function is now available for iPhone/iPad applications.
WINDEVLinux This function is now available for the WINDEV applications in Linux.
WEBDEV - Server codeLinux This function is now available for the WEBDEV sites in Linux.
iPhone/iPad This function is now available for iPhone/iPad applications.
WINDEVLinux This function is now available for the WINDEV applications in Linux.
WEBDEV - Server codeLinux This function is now available for the WEBDEV sites in Linux.
Versions 21 and later
Apple Watch This function is now available in Apple Watch mode.
New in version 21
Apple Watch This function is now available in Apple Watch mode.
Apple Watch This function is now available in Apple Watch mode.
Example
// Create an event
Event_Letsgo is eventAutomatic(eventClose)
// Run a first thread
ThreadExecute("Thread1", threadNormal, "Thread_First")
// Locks the current thread until the signal is obtained
ThreadWaitSignal()
 
// Run a second thread
ThreadExecute("Thread2", threadNormal, "Thread_Second")
// Locks the current thread until the signal is obtained
ThreadWaitSignal()
 
// Opens the event to run the threads
Event_Letsgo.Open()
 
//----------------------------------------------
PROCEDURE Thread_First()
Trace(dbgInfo(dbgProcess) + " - ThreadSendSignal(threadMain)")
ThreadSendSignal(threadMain)
Event_Letsgo.Wait()
Trace(dbgInfo(dbgProcess) + " - Signal received")
 
//--------------------------------------------
PROCEDURE Thread_Second()
Trace(dbgInfo(dbgProcess) + " - ThreadSendSignal(threadMain)")
ThreadSendSignal(threadMain)
Event_Letsgo.Wait()
Trace(dbgInfo(dbgProcess) + " - Signal received")
 
Syntax
<Result> = <Signal>.Wait([<Maximum duration>])
<Result>: Integer
  • 1 if the signal was received by the thread,
  • 0 otherwise (maximum duration exceeded).
<Signal>: AutomaticEvent variable
Name of the AutomaticEvent variable that corresponds to the event to wait for.
<Maximum duration>: Optional integer or optional Duration
Maximum time-out in hundredths of a second.
  • If no signal was received by the thread before the end of specified duration, <Result> is equal to False.
  • The time-out is endless if this parameter is not specified.
  • If this parameter is set to 0, <Result> corresponds to the status of the signal, without pending.
This parameter can correspond to:
  • an integer corresponding to the number of hundredths of a second,
  • a Duration variable,
  • Versions 23 and later
    the direct indication of duration (1 s or 10 ms for example).
    New in version 23
    the direct indication of duration (1 s or 10 ms for example).
    the direct indication of duration (1 s or 10 ms for example).
Remarks
You have the ability to end the execution of a thread even if this one is locked in an endless wait for a signal. Simply use ThreadStop.
Component : wd240vm.dll
Minimum required version
  • Version 24
This page is also available for…
Comments
Click [Add] to post a comment