A system for managing threads. A kernel tread associated with a user
thread is detected as being unneeded by the user tread. The kernel thread
is semi-detached in which data for the thread does not change stacks in
response to the kernel thread being unneeded.