WSSetThreadSafeLinksParameter (C 函数)

long WSSetThreadSafeLinksParameter(WSEnvironmentParameter p)

为所有由 p 初始化的 WSTP 环境对象创建的链接启用线程安全.

更多信息

  • 默认情况下,WSTP 链接对象并非线程安全. 为了为所有由 WSTP 环境对象默认下产生的链接对象启用线程安全,应用 WSSetThreadSafeLinksParameter() 设置线程安全参数.
  • 链接对象的线程安全(Thread-safety for link objects)的意思是说,多个线程可以在同一链接对象上同时调用 WSTP API 函数.
  • p 肯定在使用 WSNewParameters() WSTP API 函数时就已被创建.
  • WSError() 返回的标准错误值 WSSetThreadSafeLinksParameter() 返回错误代码.
  • WSTP 的标头文件 wstp.h 已对 WSSetThreadSafeLinksParameter() 作出声明.

范例

基本范例  (1)

#include "wstp.h"

int main()
{
    WSEnvironmentParameter ep;
    WSENV env;
    long apiResult;
    
    ep = WSNewParameters(WSREVISION, WSAPIREVISION);
    if(ep == (WSEnvironmentParameter)0)
    { /* Unable to create the WSEnvironmentParameter object. */ }

    apiResult = WSSetThreadSafeLinksParameter(ep);
    if(apiResult != WSEOK)
    { /* Failed to set thread-safe links parameter */ }

    env = WSInitialize(ep);
    if(env == (WSENV)0)
    { /* Failed to initialize WSTP environment object */ }

    WSReleaseParameters(ep);

    /* ... */

    WSDeinitialize(env);

    return 0;
}