Функция FlsSetValue (fibersapi.h)

Сохраняет значение в слоте локального хранилища (FLS) вызывающего волокна для указанного индекса FLS. Каждое волокно имеет собственный слот для каждого индекса FLS.

Синтаксис

BOOL FlsSetValue(
  [in]           DWORD dwFlsIndex,
  [in, optional] PVOID lpFlsData
);

Параметры

[in] dwFlsIndex

Индекс FLS, выделенный функцией FlsAlloc .

[in, optional] lpFlsData

Значение, хранимое в слоте FLS для вызывающего волокна.

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError. Можно вернуть следующие ошибки.

Код возврата Описание
ERROR_INVALID_PARAMETER
Индекс не находится в диапазоне.
ERROR_NO_MEMORY
Массив FLS не выделен.

Комментарии

Индексы FLS обычно выделяются функцией FlsAlloc во время инициализации процесса или библиотеки DLL. После выделения индекса FLS каждое волокно процесса может использовать его для доступа к собственному слоту FLS для этого индекса. Поток задает индекс FLS в вызове FlsSetValue для хранения значения в своем слоте. Поток задает тот же индекс в последующем вызове FlsGetValue для получения сохраненного значения.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header fibersapi.h
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

Волокон

FlsAlloc

FlsGetValue

Функции процессов и потоков