parallel.pool.DataQueue
클라이언트와 워커 간에 데이터 전송 및 수신 대기
설명
DataQueue 객체를 사용하면 계산이 수행되는 동안 병렬 풀에서 워커와 클라이언트 간에 전송되는 데이터 또는 메시지의 비동기 처리와 자동 처리가 가능합니다. 예를 들어 중간값을 클라이언트로 전송하고 계산 진행률을 자동으로 계산할 수 있습니다.
병렬 풀 워커의 데이터를 클라이언트로 다시 보내려면 먼저 클라이언트에서 DataQueue 객체를 만듭니다. 이 DataQueue를 parfor 루프 또는 다른 병렬 언어 구문(예: spmd)으로 전달합니다. 워커에서 send를 호출하여 클라이언트로 데이터를 다시 보냅니다. 클라이언트에서 afterEach를 사용하여, 수신한 데이터를 자동으로 처리할 함수를 지정합니다.
필요한 경우
DataQueue를 만든 워커 또는 클라이언트에서send를 호출할 수 있습니다.DataQueue는DataQueue를 만든 클라이언트 또는 워커에게만 데이터를 보냅니다.워커에 대기열을 만들고 이를 클라이언트로 다시 보내 역방향 통신을 활성화할 수 있습니다.
R2023b 이전: 한 워커에서 다른 워커로 대기열을 보낼 수는 없습니다. 워커 간에 데이터를 전송하려면
spmd,spmdSend또는spmdReceive를 대신 사용합니다.다른 모든 핸들 객체와 달리
DataQueue인스턴스와PollableDataQueue인스턴스는 워커로 전송될 때 연결된 상태로 유지됩니다.
생성
설명
는 클라이언트와 워커 간에 메시지(또는 데이터)를 전송하거나 수신 대기하는 데 사용할 수 있는 객체를 만듭니다. 데이터를 수신할 워커 또는 클라이언트에 q = parallel.pool.DataQueueDataQueue를 만드십시오.
속성
예제
팁
DataQueue객체를 사용하여, 전송된 데이터 또는 메시지만 자동으로 처리할 수 있습니다. 클라이언트 또는 워커에서 데이터를 수신한 후 이러한 데이터를 수동으로 가져오려면 대신parallel.pool.PollableDataQueue객체를 사용하여 데이터를 전송합니다.
확장 기능
버전 내역
R2017a에 개발됨
참고 항목
gcp | afterEach | poll | parfor | send | spmd | parallel.pool.PollableDataQueue | spmdSend | spmdReceive


