Jump to content

Events: Difference between revisions

593 bytes added ,  10 years ago
no edit summary
(Added F# version)
No edit summary
Line 393:
putStrLn "[2] Received event."</lang>
Note: Because there is no serialization of the text output, there is a chance that it will appear interleaved.
 
==Icon and {{header|Unicon}}==
 
The following only works in Unicon:
<lang unicon>record Event(cond, value)
 
procedure main()
event := Event(condvar())
t1 := thread {
write("Waiting for event....")
critical event.cond: while /(event.value) do wait(event.cond)
write("Event occurred.")
}
t2 := thread {
delay(1000)
event.value := "yes"
write("Signalling event.")
signal(event.cond)
}
every wait(t1|t2)
end</lang>
 
Sample run:
<pre>
->event
Waiting for event....
Signalling event.
Event occurred.
->
</pre>
 
=={{header|JavaScript}}==
Cookies help us deliver our services. By using our services, you agree to our use of cookies.