다음을 통해 공유


MPI_Grequest_free_function 콜백 함수

MPI_Grequest_free_function 애플리케이션 정의 함수 이름의 자리 표시자입니다.

구문

int MPI_Grequest_free_function(
  _In_opt_ void *extra_state
);

매개 변수

  • extra_state [in, optional]
    추가 상태입니다.

반환 값

모든 콜백 함수는 오류 코드를 반환합니다. 코드가 다시 전달되고 콜백 함수를 호출한 MPI 함수의 오류 코드에 적절하게 처리됩니다. 예를 들어 오류 코드가 반환되면 콜백 함수에서 반환된 오류 코드는 콜백 함수를 호출한 MPI 함수에서 반환됩니다. query_fnfree_fn 모두 호출하는 MPI_WaitanyMPI_Testany 호출의 경우 MPI 호출은 마지막 콜백에서 반환된 오류 코드, 즉 free_fn 반환합니다. MPI_Waitsome, MPI_Waitall, MPI_Testsome또는MPI_Testall 호출에서 하나 이상의 요청이 실패한 경우 MPI 호출은 MPI_ERR_IN_STATUS 반환합니다. 이러한 경우 MPI 호출이 상태 배열을 전달한 경우 MPI는 완료된 일반화된 요청에 해당하는 각 상태의 free_fn 콜백 함수의 해당 호출에서 반환되는 오류 코드를 반환합니다. 그러나 MPI 함수가 MPI_STATUSES_IGNORE 전달된 경우 각 콜백 함수에서 반환된 개별 오류 코드가 손실됩니다.

Fortran

    SUBROUTINE GREQUEST_FREE_FUNCTION(EXTRA_STATE, IERROR)
        INTEGER IERROR
        INTEGER(KIND=MPI_ADDRESS_KIND) EXTRA_STATE

설명

free_fn 함수는 일반화된 요청이 해제될 때 사용자가 할당한 리소스를 클린 위해 호출됩니다.

free_fn 콜백은 MPI_{Wait|에 의해 호출됩니다.이 콜백과 연결된 일반화된 요청을 완료한 Test}{any|some|all} 호출입니다. free_fn 동일한 요청에 대해 query_fn 호출한 후에 호출됩니다. 그러나 MPI 호출이 여러 일반화된 요청을 완료한 경우 free_fn 콜백 함수가 호출되는 순서는 MPI에서 지정되지 않습니다.

free_fn 콜백은 MPI_Request_free 호출(MPI_{Wait|에 대한 호출이 없는 일반화된 요청에 대해서도 호출됩니다.이러한 요청에 대해 Test}{any|some|all}이(가) 발생합니다.) 이 경우 콜백 함수는 MPI 호출 MPI_Request_free 또는 MPI 호출 MPI_Grequest_complete 호출됩니다.즉, 이 경우 두 호출 MPI_Request_freeMPI_Grequest_complete 모두 발생하자마자 실제 해제 코드가 실행됩니다. 요청은 free_fn 완료될 때까지 할당 취소되지 않습니다. free_fn 올바른 프로그램에서 요청당 한 번만 호출됩니다.

요구 사항

제품

HPC 팩 2012 MS-MPI 재배포 가능 패키지, HPC 팩 2008 R2 MS-MPI 재배포 가능 패키지, HPC Pack 2008 MS-MPI 재배포 가능 패키지 또는 HPC 팩 2008 클라이언트 유틸리티

헤더

Mpi.h; Mpif.h

추가 정보

MPI 외부 함수

MPI_Grequest_start

MPI_Waitall

MPI_Waitsome

MPI_Waitany

MPI_Testall

MPI_Testsome

MPI_Testany