key
Address of a variable that receives the key value. This value
is used in calls to tis_getspecific() and tis_setspecific() to
obtain and set the value associated with this key.
destructor
Address of a routine that is called to destroy the context value
when a thread terminates with a non-NULL value for the key. Note
that this argument is used only when threads are present.