
SwooleServer::sendMessage 함수의 첫 번째 인자로 전송할 데이터의 타입은 문자열이거나 배열이 될 수 있습니다. 문자열을 전송하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$swooleServer->sendMessage('Hello, World!');
배열을 전송하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$data = array('name' => 'John', 'age' => 30);
$swooleServer->sendMessage(json_encode($data));
sendMessage 함수의 두 번째 인자로 전송할 데이터의 타입을 지정할 수 없습니다. 하지만, $flag를 사용하여 데이터의 전송 방식을 지정할 수 있습니다.
$flag의 값은 다음과 같습니다.
- SWOOLE_MSG_OOB: OOB 데이터를 전송합니다.
- SWOOLE_MSG_FIN: FIN 데이터를 전송합니다.
- SWOOLE_MSG_EOF: EOF 데이터를 전송합니다.
예를 들어, OOB 데이터를 전송하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$swooleServer->sendMessage($data, SWOOLE_MSG_OOB);
하지만, $flag를 사용하여 데이터의 타입을 지정할 수는 없습니다.
.sendMessage() 함수는 스레드 안전이 보장되지 않습니다. 따라서, 스레드 안전을 보장하려면, 스레드에 대한 동기화를 사용해야 합니다.
또한, sendMessage() 함수는 비동기적으로 작동합니다. 따라서, 클라이언트가 데이터를 수신하기까지의 시간이 지연될 수 있습니다.
이러한 이유로, sendMessage() 함수를 사용할 때는 주의를 기울여야 합니다.
2025-04-19 06:34