Atrybuty asynchroniczne
Gdy program wywołuje procedurę w interfejsie, procedura może być wykonywana synchronicznie lub asynchronicznie. Synchroniczna procedura powoduje, że program wywołujący czeka, aż procedura zostanie zwrócona, zanim program będzie mógł kontynuować. Procedura asynchroniczna zwraca natychmiast bez oczekiwania na wyniki. Program wywołujący musi później ponownie zsynchronizować się z procedurą interfejsu w celu odbierania danych. Aby uzyskać więcej informacji, zobacz asynchroniczneRPC .
Aby zapewnić obsługę asynchronicznych wywołań procedur zdalnych, można użyć następujących atrybutów.
Atrybut | Zwyczaj |
---|---|
asynchroniczne | Po zastosowaniu do parametru funkcji definiuje uchwyt, który umożliwia wywołującym wykonywanie wywołania asynchronicznego i zwracanie natychmiast bez oczekiwania na wyniki, a później ponowną synchronizację z wywołaną funkcją w celu odbierania danych po zakończeniu wywołania. Atrybut asynchroniczny jest również używany w plikach ACF do definiowania asynchronicznego uchwytu dla procedury lub całego interfejsu. W przypadku interfejsów COM ten interfejs jest przestarzały i nie może być używany dla nowych interfejsów. |
async_uuid | Kieruje kompilator MIDL do definiowania zarówno synchronicznych, jak i asynchronicznych wersji interfejsu COM. |
może | Klient wykonujący to zdalne wywołanie procedury nie oczekuje żadnej odpowiedzi wskazującej na dostarczenie lub zakończenie wywołania, a dostarczanie nie jest gwarantowane. Jest to w przeciwieństwie do komunikatów operacji, w których nie oczekuje się odpowiedzi, ale dostarczanie jest gwarantowane. |
komunikatu | Zdalne wywołanie procedury ma być traktowane jako komunikat asynchroniczny od klienta do serwera. Klient wykonuje wywołanie i zwraca natychmiast, podczas gdy rzeczywiste wywołanie jest obsługiwane przez transport kolejkowania komunikatów (ncadg_mq). |