This function is a GNUstep extension. It pretty much duplicates the functionality of [NSThread +currentThread] but is more efficient and is used internally throughout GNUstep.
Returns the current thread. Could perhaps return nil
if executing a thread that was started outside the GNUstep
environment and not registered (this should not happen in a
well-coded application).
This functiion is provided to let threads started by some other software library register themselves to be used with the GNUstep system. All such threads should call this function before attempting to use any GNUstep objects.
Returns YES
if the thread can be registered,
NO
if it is already registered.
Sends out a NSWillBecomeMultiThreadedNotification
if the process was not already multithreaded.
This functiion is provided to let threads started by some other software library unregister themselves from the GNUstep threading system.
Calling this function causes a
NSThreadWillExitNotification
to be sent out, and destroys the GNUstep NSThread object
associated with the thread.
The NSRange type is used to specify ranges of locations, typically items in an array, characters in a string, and bytes in a data object.
As 'boundary' or 'fencepost' errors are a particularly common problem in programming, it is important that you understand how an NSRange works.
An NSRange consists of a location and a length. The points
that are considered to lie in a range are the integers from
the location to the location plus the length, so the number
of points in a range is the length of the range plus one.
However, if you consider these points like the marks on a
ruler, you can only store information between
points. So the number of items that can be stored in a range
is the length of the range.