#include <hythread.h>
Public Attributes | |
void * | reserved |
int32 | request |
Number of requests made for this thread, it includes both suspend requests and safe point callback requests. | |
int16 | disable_count |
Field indicating that thread can safely be suspended. | |
hythread_group_t | group |
Group for this thread. | |
void * | thread_local_storage [10] |
Array representing thread local storage. |
void* HyThread_public.reserved |
int32 HyThread_public.request |
Number of requests made for this thread, it includes both suspend requests and safe point callback requests.
The field is modified by atomic operations.
Increment in functions: 1. send_suspend_request()
Decrement in functions: 1. hythread_resume()
Field indicating that thread can safely be suspended.
Safe suspension is enabled on value 0.
The disable_count is increased/decreaded in hythread_suspend_disable()/hythread_suspend_enable() function for current thread only.
Also disable_count could be reset to value 0 and restored in hythread_reset_suspend_disable()/hythread_set_suspend_disable() function for current thread only.
Function hythread_exception_safe_point() sets disable_count to value 1 before safe point callback function calling and restores it after the call.
Function thread_safe_point_impl() sets disable_count to value 0 before entering to the safe point and restores it after exitting.
Group for this thread.
Different groups are needed in order to be able to quickly iterate over the specific group. Examples are: Java threads, GC private threads. Equal to the address of the head of the list of threads for this group.
void* HyThread_public.thread_local_storage[10] |
Array representing thread local storage.
Genereated on Tue Mar 11 19:25:26 2008 by Doxygen.
(c) Copyright 2005, 2008 The Apache Software Foundation or its licensors, as applicable.