_fread_nolock_s

在不锁定的情况下从流中读取数据。 此版本的 fread_nolock 具有 CRT 中的安全功能中所述的安全增强功能。

语法

size_t _fread_nolock_s(
   void *buffer,
   size_t bufferSize,
   size_t elementSize,
   size_t elementCount,
   FILE *stream
);

参数

buffer
数据的存储位置。

bufferSize
目标缓冲区的大小(以字节为单位)。

elementSize
要读取的项的大小(以字节为单位)。

elementCount
要读取的项的最大数量。

stream
指向 FILE 结构的指针。

返回值

请参阅 fread_s

备注

此函数为 fread_s 的非锁定版本。 它与 fread_s 相同,只不过它可能受到其他线程的干扰。 它可能更快,因为它不会产生锁定其他线程的开销。 仅在线程安全的上下文中使用此函数,如单线程应用程序或调用范围已处理线程隔离的区域。

默认情况下,此函数的全局状态范围限定为应用程序。 若要更改此行为,请参阅 CRT 中的全局状态

要求

函数 必需的标头
_fread_nolock_s C:<stdio.h>;C++:<cstdio> 或 <stdio.h>

有关兼容性的详细信息,请参阅 兼容性

另请参阅

流 I/O
fwrite
_read