make-thread

Name

make-thread -- Create a new thread.

Type: function

Synopsis

make-thread( thunk [name] [group], thread);

Arguments

thunk

An instance of <procedure>

name

An instance of <string>

group

An instance of <thread-group>

Return Values

thread

An instance of <thread>

Description

Creates and returns a new thread of control.

The optional name provides a convenient way of referring to the thread to the user. If not supplied, the name defaults to "thread".

The optional group allows the new thread to be created as a member of a thread group other than the current thread group. Since a thread's group cannot be changed once created, this is the only way to create a thread running in a different group.

The newly created thread is initially suspended, with a suspend count of 1. Use thread-resume to make the thread available for execution.

The behavior of the thread is to invoke the given thunk. When thunk returns, the thread enters the complete state and thread-join returns (all) the values returned by thunk.