Share via


비동기 특성

프로그램이 인터페이스에서 프로시저를 호출하면 프로시저가 동기적으로 또는 비동기적으로 실행 될 수 있습니다. 동기 프로시저를 사용하면 프로그램이 계속 진행되기 전에 프로시저가 반환될 때까지 호출 프로그램이 대기합니다. 비동기 프로시저는 결과를 기다리지 않고 즉시 반환됩니다. 호출 프로그램은 나중에 데이터를 수신하기 위해 인터페이스 프로시저를 사용하여 다시 동기화해야 합니다. 자세한 내용은 비동기 RPC를 참조하세요.

다음 특성을 사용하여 비동기 원격 프로시저 호출을 지원할 수 있습니다.

attribute 사용량
비동기 함수 매개 변수에 적용되는 경우 호출자가 비동기 호출을 수행하고 결과를 기다리지 않고 즉시 반환할 수 있는 핸들을 정의하고, 나중에 호출이 완료된 후 호출된 함수를 사용하여 데이터를 수신하도록 다시 동기화합니다. 비동기 특성은 ACF 파일에서도 프로시저 또는 전체 인터페이스에 대한 비동기 핸들을 정의하는 데 사용됩니다. COM 인터페이스의 경우 이 인터페이스는 사용되지 않으며 새 인터페이스에 사용할 수 없습니다.
async_uuid MIDL 컴파일러에 COM 인터페이스의 동기 버전과 비동기 버전을 모두 정의하도록 지시합니다.
어쩌면 이 원격 프로시저 호출을 수행하는 클라이언트는 호출의 배달 또는 완료를 나타내는 응답을 기대하지 않으며 배달이 보장되지 않습니다. 이는 응답이 예상되지 않지만 배달이 보장되는 메시지 작업과는 대조적입니다.
메시지 원격 프로시저 호출은 클라이언트에서 서버로의 비동기 메시지로 처리됩니다. 실제 호출은 메시지 큐 전송(ncadg_mq)에 의해 처리되는 동안 클라이언트는 호출을 수행하고 즉시 반환합니다.