次の方法で共有


FlsAlloc 関数 (fibersapi.h)

ファイバー ローカル ストレージ (FLS) インデックスを割り当てます。 プロセス内の任意のファイバーは、その後、このインデックスを使用して、ファイバーに対してローカルな値を格納および取得できます。

構文

DWORD FlsAlloc(
  [in] PFLS_CALLBACK_FUNCTION lpCallback
);

パラメーター

[in] lpCallback

PFLS_CALLBACK_FUNCTION型のアプリケーション定義コールバック関数へのポインター。 このパラメーターは省略可能です。 詳細については、「 FlsCallback」を参照してください。

戻り値

関数が成功した場合、戻り値は 0 に初期化された FLS インデックスです。

関数が失敗した場合、戻り値はFLS_OUT_OF_INDEXES。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

プロセスのファイバーは、FlsFree、FlsSetValue、または FlsGetValue 関数の後続の呼び出しで FLS インデックスを使用できます。

FLS インデックスは、通常、プロセスまたはダイナミック リンク ライブラリ (DLL) の初期化中に割り当てられます。 FLS インデックスが割り当てられた後、プロセスの各ファイバーはそれを使用して独自の FLS ストレージ スロットにアクセスできます。 FLS スロットに値を格納するために、ファイバーは FlsSetValue の呼び出しでインデックスを指定します。 ファイバーは、格納されている値を取得する FlsGetValue の後続の呼び出しで同じインデックスを指定します。

FLS インデックスは、プロセス境界を越えて有効ではありません。 あるプロセスで割り当てられたインデックスが別のプロセスで有効であると DLL は想定できません。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー fibersapi.h
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

繊維

FlsCallback

FlsFree

FlsGetValue

FlsSetValue

プロセス関数とスレッド関数