(toppers-users 2403) TlsAlloc,TlsSetValueについて
Naoto Yamashita
n-yama @ systemdesign.co.jp
2006年 4月 13日 (木) 14:58:58 JST
こんにちは。
山下と申します。
Windows APIのTlsAlloc,TlsSetValueについてご教授をお願いします。
Toppers/JSPカーネル1.4のconfig/primary_thread.cでTLS用APIを
以下のように使用している箇所があります。
TlsAlloc();
TlsSetValue(TLS_LOGMASK, (LPVOID)1);
TlsSetValue(TLS_THREADHANDLE, (LPVOID)CurrentRunningThreadHandle);
TlsAlloc,TlsSetValueを参考文献などは、TlsAllocを実行した結果として
返される値(インデックス)をTlsSetValueの第一引数として与えると
記載されていました。
Toppers/JSPカーネルでは、TlsSetValueの第一引数のインデックスに
固定の値(TLS_LOGMASK、TLS_THREADHANDLE)を設定していますが、
このような使い方で問題ないのでしょうか。
ちなみに、当方環境で、TlsAllocを実行したところ戻り値として21が
返されました。
TLS_LOGMASK、TLS_THREADHANDLEについては、以下の値として
定義されています。
#define TLS_LOGMASK 0x00000001 //ログ出力マスク
#define TLS_THREADHANDLE 0x00000002 //CreateThreadしたときのハンドル
アドバイスの程、よろしくお願い致します。