Udostępnij za pośrednictwem


Bezpieczeństwo wątków

Wszystkie funkcje w tym interfejsie API są bezpieczne do współbieżnego wywoływania z różnych wątków. Jednak każdy obiekt przekazany jako parametr do funkcji ma określone zachowanie wątkowe, jak opisano poniżej.

Następujące dojścia są pojedyncze wątkowe i nie obsługują operacji współbieżnych dla określonego wystąpienia:

Następujące dojścia są wolne wątkowe i obsługują operacje współbieżne dla określonego wystąpienia:

W przypadku wszystkich tych dojść wątkowanie jest definiowane pod względem operacji (a nie wywołań funkcji). Operacja jest definiowana inaczej dla funkcji wywoływanych synchronicznie w porównaniu z funkcjami wywoływanych asynchronicznie:

  • W przypadku funkcji wywoływanych synchronicznie operacja jest oczekująca podczas wykonywania funkcji.
  • W przypadku funkcji wywoływanych asynchronicznie, jeśli funkcja zwraca kod zwrotny inny niż WS_S_ASYNC operacja jest oczekująca podczas wykonywania funkcji. Jeśli jednak funkcja zwróci WS_S_ASYNC , operacja oczekuje do momentu wywołania WS_ASYNC_CALLBACK. Aby uzyskać więcej informacji na temat asynchronicznego wywoływania funkcji, zobacz temat Asynchroniczny model. Aby uzyskać informacje o kodach błędów, zobacz wartości zwracane przez usługi Windows Web Services.

Niepowodzenie śledzenia kontraktu wątkowego dla obiektu spowoduje niezdefiniowane zachowanie.