A term thread means some kind of minimal process in computer science. Processes and threads are used to simulate parallel execution of programcode. But there is a difference between both: a process describes the execution of a whole program. It contains an image of the programs binary executeable code in memory just as it is used for handling memory allocation by the operating system. However a thread is nothing in this way. It does just describe a parallel execution of code inside a process, so one process can hold multiple threads.
The description above is just one very simple definition of a thread. GTA simplifies multithreading a lot so everything the script needs to do is to start a thread and perhaps end it somehow. It does not need to handle variable synchronisation or communication between two threads. This is what the game does through internal routines.
- 00D7 – Creates a thread
- 004F – Creates a thread with additional parameters
- 004E – Ends the current thread
- 03A4 – Gives a thread a name
- 0459 – Ends a named thread
- 0A92 – Creates a CLEO thread
- 0A93 – Ends a CLEO thread
- 0A95 – Enables thread saving for a CLEO thread
- 0A9F – Returns the pointer to the current thread
- 0AAA – Returns the pointer to a named thread
- 0ABA – Ends a named CLEO thread