int dataLength;
int readLength = read(conn->getFd(), &dataLength, HEADER_SIZE);
printf("Header read %d \n", readLength);
if(readLength == 0){
removeClient(conn);
close(conn->getFd());
}
else {
/*
* Do not parse anything here.
* Pass the raw data to the work handler.
*/
char *buf = new char[dataLength+1];
int dataReadLength = read(conn->getFd(), buf, dataLength);
printf("Data read %d \n", dataReadLength);
printf("ServerManager::eventAcceptLoop, A message has been received \n");
addWork(conn->getFd(), buf, dataReadLength);
私はネットワークプログラミングを行っており、このコードがあります。 localhostでは正常に動作しますが(エラーは発生しません)、現実世界のネットワークでこれを試してみると、それは爆発するだろうと確信しています。問題は、私はネットワークプログラミングの専門家ではなく、追加するはずのエラー処理が不明だということです。また、特定のエラー処理を含む良い例やチュートリアルを見つけなければなりませんでした。読み取りハンドルエラー
あなたが私にエラー処理を手助けする良い例やチュートリアルを提供できるなら、私は非常に感謝します。
ありがとうございます。
[読み取りハンドルの問題..](http://stackoverflow.com/questions/6420164/read-handle-problem)の重複が可能です。 1時間未満前に尋ねられました。 – Nemo