2010-02-23 78 views
3

我有getc函數這個奇怪的問題。我使用getc從套接字文件處理程序獲取字符。我需要模擬PC和移動設備之間的消息交換。前幾條消息,getc工作正常。但是對於這個,getc無法從套接字獲取任何東西。整個Perl程序被阻塞,直到我重置該移動設備。但wireshark顯示消息被髮送到正確的端口號。如何診斷Perl的getc問題?

有什麼工具可以用於發生了什麼?

由於

回答

2

與文件和插座處理問題的常見來源是輸入的結束,可以達到和處理錯誤或EOF標誌可以被設置。嘗試調用seek HANDLE,0,1getc一個電話後,手柄復位不返回任何東西(或者它應該是sysseek?是getc緩衝I/O操作?

+0

感謝您的答覆。我使用Wireshark並捕獲額外的散熱片, Ack從tcp客戶端發送,導致下一個3路握手信號不同步,我使用前面測試過的同一個套接字解決了這個問題,現在看起來不錯。 – alex 2010-02-24 01:11:31