>  기사  >  PHP 프레임워크  >  메시지 전송 실패 오류를 얻는 swoole 메소드

메시지 전송 실패 오류를 얻는 swoole 메소드

尚
원래의
2019-12-24 16:23:252654검색

메시지 전송 실패 오류를 얻는 swoole 메소드

클라이언트에 데이터 보내기, 함수 프로토타입:

bool Server->send(mixed $fd, string $data, int $serverSocket = -1);

전송 프로세스는 비동기식이며, 맨 아래 레이어는 자동으로 듣고 쓰고, 점차적으로 클라이언트에 데이터를 보냅니다.

Parameters

$fd, 클라이언트 파일 descriptor

$data, 전송되는 데이터, 최대 TCP 프로토콜은 2M를 초과하지 않아야 합니다. buffer_output_size를 수정하여 전송이 허용되는 최대 패킷 길이를 변경할 수 있습니다

$serverSocket, 이 매개변수는 Unix 소켓 DGRAM으로 데이터를 전송할 때 필요합니다. 피어이며 TCP 클라이언트는 이를 채울 필요가 없습니다.

반환 값

성공적인 전송은 true를 반환합니다.

전송 실패는 false를 반환합니다. 실패 오류 코드를 얻으려면 $server->getLastError() 메소드를 호출하세요

Server->getLastError

최신 작업 가져오기 잘못된 오류 코드입니다. 비즈니스 코드는 오류 코드 유형에 따라 다양한 논리를 실행할 수 있습니다.

function Server->getLastError()

정수 숫자 오류 코드를 반환합니다

오류 전송 실패

1001 서버에 의해 연결이 닫혔습니다. 이 오류는 일반적으로 코드에서 $serv->close()가 실행될 때 발생합니다. 특정 연결을 닫았지만 여전히 $serv->send()를 호출하여 이 연결로 데이터를 보냅니다

1002 클라이언트에 의해 연결이 닫혔고 소켓이 닫혀서 데이터를 피어로 보낼 수 없습니다

1003 Close가 실행 중입니다. onClose 콜백 함수에서 $serv->send()를 사용하면 안 됩니다

1004 연결이 닫혔습니다

1005 연결이 존재하지 않습니다. 들어오는 $fd가 잘못되었을 수 있습니다

1007 시간 초과 데이터가 수신되었습니다. TCP가 연결을 닫은 후 파이프라인 버퍼에 일부 데이터가 남아 있을 수 있으며, 이 부분은 삭제됩니다.

1008 전송 버퍼가 가득 차서 전송 작업을 수행할 수 없음을 나타냅니다. 이 연결의 피어가 시간 내에 데이터를 수신할 수 없어 전송 버퍼가 가득 찼습니다

1202 전송 데이터가 서버>buffer_output_size 설정을 초과합니다

권장 학습: swoole 비디오 튜토리얼

위 내용은 메시지 전송 실패 오류를 얻는 swoole 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.