Difference between revisions of "Channel:demand"

m (Arguments: - SDL_CondWaitTimeout accepts milliseconds, not microseconds.)
 
(11 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
{{newin|[[0.9.0]]|090|type=function}}
 
{{newin|[[0.9.0]]|090|type=function}}
Retrieves the value of a message and removes it from the thread channels message queue. The name of the message can be any string. The value of the message can be a boolean, string, number or a LÖVE userdata. It waits until a message is in the queue then returns the message value.
+
Retrieves the value of a Channel message and removes it from the message queue.
 +
 
 +
It waits until a message is in the queue then returns the message value.
 
== Function ==
 
== Function ==
 
=== Synopsis ===
 
=== Synopsis ===
 
<source lang="lua">
 
<source lang="lua">
value = Channel:demand( name )
+
value = Channel:demand( )
 
</source>
 
</source>
 
=== Arguments ===
 
=== Arguments ===
{{param|string|name|The name of the message.}}
+
None.
 
=== Returns ===
 
=== Returns ===
{{param|boolean, number, string or LÖVE userdata|value|The contents of the message.}}
+
{{param|Variant|value|The contents of the message.}}
 +
 
 +
== Function ==
 +
{{newin|[[11.0]]|110|type=variant}}
 +
=== Synopsis ===
 +
<source lang="lua">
 +
value = Channel:demand( timeout )
 +
</source>
 +
=== Arguments ===
 +
{{param|number|timeout|The maximum amount of time to wait, in seconds. Given as a decimal, accurate to the millisecond.}}
 +
 
 +
=== Returns ===
 +
{{param|Variant|value|The contents of the message or nil if the timeout expired.}}
 
== See Also ==
 
== See Also ==
 
* [[parent::Channel]]
 
* [[parent::Channel]]
 +
* [[Channel:supply]]
 +
* [[Channel:pop]]
 
[[Category:Functions]]
 
[[Category:Functions]]
{{#set:Description=Wait for and retrieve the value of a message.}}
+
{{#set:Description=Wait for and retrieve the value of a Channel message.}}
 
== Other Languages ==
 
== Other Languages ==
 
{{i18n|Channel:demand}}
 
{{i18n|Channel:demand}}

Latest revision as of 11:22, 7 July 2021

Available since LÖVE 0.9.0
This function is not supported in earlier versions.

Retrieves the value of a Channel message and removes it from the message queue.

It waits until a message is in the queue then returns the message value.

Function

Synopsis

value = Channel:demand( )

Arguments

None.

Returns

Variant value
The contents of the message.

Function

Available since LÖVE 11.0
This variant is not supported in earlier versions.

Synopsis

value = Channel:demand( timeout )

Arguments

number timeout
The maximum amount of time to wait, in seconds. Given as a decimal, accurate to the millisecond.

Returns

Variant value
The contents of the message or nil if the timeout expired.

See Also

Other Languages