MPI_Buffer_detach 

Nazwa: 

MPI_Buffer_detach - usuwa istniejący bufor (np. dla użycia MPI_Bsend itp.);

Wyjściowe parametry: 

buffer - początkowy adres bufora;
size
- rozmiar bufora w bajtach (integer); 

Opis: 

Z powodu, że  MPI_Buffer_detatch zwraca adres i rozmiar bufora, który właśnie został usunięty zagnieżdżone biblioteki mogą zastąpić lub odtworzyć ten bufor;  
Na przykład rozpatrzmy

int size, mysize, idummy; 
void *ptr, *myptr, *dummy; 
MPI_Buffer_detach( &ptr, &size ); 
MPI_Buffer_attach( myptr, mysize );
 ... ... library code ... ... 
MPI_Buffer_detach( &dummy, &idummy ); 
MPI_Buffer_attach( ptr, size ); 

To jest bardzo podobne do działania sygnałów w Unix-sie, ma te same mocne strony (jest proste) i te same słabości (to jest praca tylko dla zagnieżdżonych użyć).

Użycie:

#include "mpi.h"
int MPI_Buffer_detach( buffer, size );
void **buffer;
int *size;