天天看點

Qt網絡程式設計時的一些注意點

記錄一下在使用Qt進行網絡程式設計時遇到的一些問題以及注意點。

  1. 在使用QTCPSocket進行通信的時候,要注意一下對于它的readyRead信号和槽連接配接過程需要在執行過QTCPServer的nextPendingConnection函數之後進行,也就是說先用一個pTcpSocket = pTctServer->nextPendingConnection()獲得這次連接配接的網絡套接字結束的時候,才能進行該套接字的信号和槽的連接配接。
  2. 網絡程式設計中遇到的一些錯誤資訊,一般情況下在Qt的網絡程式設計遇到錯誤的時候,Qt不會停止程式報錯之類的操作,而是會發出一個QAbstractSocket::SocketError的錯誤信号,程式中需要展現出對于該錯誤資訊的處理,如果不處理的話,可能會出現問題。
  3. 在連接配接意外斷開時候的處理方式:

    a.在啟動用戶端的時候就進行重連,無論伺服器是否啟動(也就是說,在用戶端啟動的時候,隻要發現沒有連接配接到伺服器,就一直進行連接配接操作)。

    b.在用戶端異常斷開,或者是判定斷開(比如多少秒沒有收到消息)的情況下,進行重連。

繼續閱讀