线程安全

此 API 中的所有函数都可以安全地从不同的线程并发调用。 但是,作为参数传递给函数的每个对象都具有特定的线程处理行为,如下所示。

以下句柄是单线程处理,不支持特定实例的并发作:

以下句柄为自由线程处理,并支持特定实例的并发作:

对于所有这些句柄,线程在作(而不是函数调用)方面定义。 对于以同步方式调用的函数和异步调用的函数,为作定义不同:

  • 对于同步调用的函数,该作在执行函数期间处于挂起状态。
  • 对于异步调用的函数,如果函数返回的返回代码不是 WS_S_ASYNC 该作在执行函数期间挂起。 但是,如果函数返回 WS_S_ASYNC,则在调用 WS_ASYNC_CALLBACK 之前,该作将挂起。 有关异步调用函数的详细信息,请参阅 异步模型 主题。 有关错误代码,请参阅 Windows Web Services 返回值

未能遵循对象的线程处理协定将导致未定义的行为。