Difference between revisions of "Thread"

m
m
 
(8 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{newin|[[0.7.0]]|type=type}}
+
{{newin|[[0.7.0]]|070|type=type}}
A Thread is a chunk of code that can run in parallel with other threads.
+
A Thread is a chunk of code that can run in parallel with other threads. Data can be sent between different threads with [[Channel]] objects.
 +
 
 
== Constructors ==
 
== Constructors ==
{{#ask: [[Category:Functions]] [[Constructs::Thread]]
+
{{#ask: [[Category:Functions]] [[Constructs::Thread]] [[Concept:Current]]
 
| headers=hide
 
| headers=hide
 
| default=None.
 
| default=None.
 +
| format=template
 +
| template=ListingFields
 +
| introtemplate=ListingIntro
 +
| outrotemplate=ListingOutro
 
| ?Description
 
| ?Description
 +
| ?PrettySince
 +
| ?PrettyRemoved
 
}}
 
}}
 
== Functions ==
 
== Functions ==
{{#ask: [[Category:Functions]] [[parent::Thread]] OR [[parent::Object]]
+
{{#ask: [[Category:Functions]] [[parent::Thread||Object]] [[Concept:Current]]
 
| headers=hide
 
| headers=hide
 +
| format=template
 +
| template=ListingFields
 +
| introtemplate=ListingIntro
 +
| outrotemplate=ListingOutro
 
| ?Description
 
| ?Description
 +
| ?PrettySince
 +
| ?PrettyRemoved
 
}}
 
}}
 +
== Supertypes ==
 +
* [[parent::Object]]
 +
== Notes ==
 +
{{oldin|[[0.9.0]]|090|type=note|text=This method for retrieving errors has been replaced by [[Thread:getError]] and [[love.threaderror]]}}
 +
If a Lua error occurs in the thread, a message with the name "error" gets pushed to its message pool. Retrieve the message with <tt>Thread:get('error')</tt>.
 
== See Also ==
 
== See Also ==
 
* [[parent::love.thread]]
 
* [[parent::love.thread]]
 
[[Category:Types]]
 
[[Category:Types]]
{{#set:Description=A Thread represents a thread.
+
{{#set:Description=A Thread represents a thread.}}
}}
 
 
== Other Languages ==
 
== Other Languages ==
 
{{i18n|Thread}}
 
{{i18n|Thread}}

Latest revision as of 22:34, 27 December 2015

Available since LÖVE 0.7.0
This type is not supported in earlier versions.

A Thread is a chunk of code that can run in parallel with other threads. Data can be sent between different threads with Channel objects.

Constructors

love.thread.newThread Creates a new Thread from a filename, string or FileData object containing Lua code. Added since 0.7.0

Functions

Object:release Immediately destroys the object's Lua reference. Added since 11.0
Object:type Gets the type of the object as a string.
Object:typeOf Checks whether an object is of a certain type.
Thread:demand Receive a message from a thread. Wait for the message to exist before returning. Added since 0.7.0 Removed in 0.9.0
Thread:get Get a value. Added since 0.8.0 Removed in 0.9.0
Thread:getError Retrieves the error string from the thread. Added since 0.9.0
Thread:getKeys Returns the names of all messages as a table. Added since 0.8.0 Removed in 0.9.0
Thread:getName Get the name of a thread. Added since 0.7.0 Removed in 0.9.0
Thread:isRunning Returns whether the thread is currently running. Added since 0.9.0
Thread:kill Forcefully terminate the thread. Added since 0.7.0 Removed in 0.8.0
Thread:peek Receive a message from a thread, but leave it in the message box. Added since 0.7.0 Removed in 0.9.0
Thread:receive Receive a message from a thread. Added since 0.7.0 Removed in 0.8.0
Thread:send Send a message. Added since 0.7.0 Removed in 0.8.0
Thread:set Set a value. Added since 0.8.0 Removed in 0.9.0
Thread:start Starts the thread. Added since 0.7.0
Thread:wait Wait for a thread to finish. Added since 0.7.0

Supertypes

Notes

Removed in LÖVE 0.9.0
This method for retrieving errors has been replaced by Thread:getError and love.threaderror.

If a Lua error occurs in the thread, a message with the name "error" gets pushed to its message pool. Retrieve the message with Thread:get('error').

See Also

Other Languages