我自個幫單位開發的winform管理程式,在離開電腦一段時間一小時以上,再次操作時會報"連接錯誤,信號燈亮時間到"錯誤框,關閉后恢復正常,請問何故呀?
阿里云SQL庫!
另在程式中用定時器每2分鐘訪問庫,還是有連接錯誤!
幾個管理程式都有這種現象,連續操作是正常的!
uj5u.com熱心網友回復:
連接錯誤,信號燈亮時間到先查找,這個例外是哪里拋的。然后在來問。
反正微軟自己是不會拋啥“信號燈亮時間到”這種提示給你的
uj5u.com熱心網友回復:
正常的寫法應是有需要才連SERVER,平常就斷線,而不是一直on lineuj5u.com熱心網友回復:
是這樣一種場景, 打開任一個資料查詢, 不關閉此視窗, 然后掛機一個時以上, 滑鼠點擊界面, 無回應幾秒后, 彈窗報錯"在從服務器接收結果時發生傳輸級錯誤。 (provider: TCP 提供程式, error: 0 - 信號燈超時時間已到)", 關閉彈窗后恢復正常, 可重繪查詢!w7與w10, 不同機器, 均出現此情況!
uj5u.com熱心網友回復:
這個應該是路由掐斷了長期無任何通訊的tcp連接當然,我們說和資料通訊都是瞬時的,所以就如2樓說的,conn不應該用永遠open,只有使用的時候才open,使用完畢你應該立刻close他
uj5u.com熱心網友回復:
Tcp都有一個keepalive,如果你長時間不做任何通訊,不管是SQLServer還是你本地的tcp通訊都會關閉,如果想一直保持長連接那就需要定時向資料庫發送資料包uj5u.com熱心網友回復:
你還是在場景應用的時候,也就是資料查詢的時候打開Connect,查詢完馬上就關閉,再次查詢的時候再打開,打開就關閉。加一個事件,有動作的時候才會去查詢,查詢的時候才連接就不會出現這種情況了,你這種情況,一個是你單位的路由有握手時間,也就是類似TCP協議里的Keppalive。再有就是云SQL也有限制的,他肯定不會讓你長期保持無資料連接的。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/26282.html
標籤:C#
