NSFunctions $Revision$ $Date$ Functions Foundation/NSThread.h

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).

Foundation/NSThread.h

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.

Foundation/NSThread.h

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.

Types struct { unsigned long location; unsigned long length; } Foundation/NSRange.h

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.