全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:934
推到 Plurk!
推到 Facebook!

使用的網路元件不同是否會造成資料接收有問題?

答題得分者是:RedSnow
ESCAPE
一般會員


發表:37
回覆:47
積分:16
註冊:2005-02-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-06 09:56:27 IP:61.219.xxx.xxx 未訂閱
請教一個網路元件的設定問題,因為我對網路方面不太熟悉,如果覺得小弟所問的問題很愚蠢的話,還是煩請各位前輩不吝指教。 我Client端使用的是WinSocket元件,通訊協定是TCP/IP,但我在Server端使用的是TTCPServer元件,是否因為這樣才會造成Server端必須等待Client端結束連線才會收到資料?因為我如果使用D6的ServerSocket元件就可以即時收到Client端傳送的資料。所以如果兩端所使用的元件不同會有差異嗎?
RedSnow
版主


發表:79
回覆:1322
積分:845
註冊:2003-12-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-05-14 16:25:41 IP:218.19.xxx.xxx 未訂閱
ESCAPE 您好: 我使用通訊元件的經驗不是很多,以下是就我個人有限的經驗提供一點看法供您參考: 不同的應用程式使用著不同的通訊元件是很正常的事情,否則早就天下大亂了,Server 與 Client 端的程式雖使用著不同的通訊元件,而兩者之間仍然可以相互溝通,主要是使用著相同的通訊協定,這也就是為何會有通訊協定的原因,通訊協定是一種 "標準",不管你在內部搞什麼名堂?只要你要與外部溝通,那就得遵循 "標準" 來行事,通訊協定就像是一種語言一樣,兩個人必須使用著相同的語言才能相互溝通。 您所描述的差異,應該是不同元件使用著不同的方式在處理,例如:傳送封包的大小、每接收到幾個封包才做處理....等,在某些處理上,如果 Server 每接收到一筆資料就處理一次的話,可能會讓整個動作變得很慢,因此有可能某些元件會在接收資料到達某個數量,或是全部接收完畢之後才處理接收到的資料。 其實在不同的通訊元件中,它們的功能與控制方式應該都是大同小異的,不同元件之間的設計方式不同,這可以元件所提供的屬性與事件之不同就可以看得出來,有的元件可能是設計成每接收到某個數量就自動送出一個訊號以觸發另一個事件,而有的元件可能是要自己去計算接收資料數量,然後去做自己要處理的動作,如果接收資料的中途沒有自行處理的話,才會在資料全部傳送完畢後,送出某個訊號去觸發另一個事件,這大概就是您所說的那兩個 Server 元件之所以不同的狀況吧? 不同元件之間通常會有不同的預設值,如果直接使用預設值來運作,其過程與結果的差異可能不小,但是透過屬性的調校及事件的處理,應該都可以達到相同的目的,如果處理的結果相同但是效率上卻產生了差異的話,那就是自己的處理流程或是元件設計得好不好的問題了。
系統時間:2024-05-14 15:10:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!