剛學delphi,用Indy實作支持多客戶端檔案傳輸到服務器的一個程式。由于TIdTcpserver本身支持多執行緒的,所以只需要在TCPServerExecute事件里面寫接收資料,
MyFilestream:= TFileStream.Create(FileName,FmCreate);
AContext.Connection.IOHandler.ReadBytes(buf,NumberBytes,False);
BytesToRaw(buf, Buff,NumberBytes);
MyFilestream.WriteBuffer(buff,numberBytes);但是當多個客戶端同時傳輸的時候MyFilestream就不能滿足要求了,求高手指導指導怎么解決這個問題,如果有現成的demo就更好了。
uj5u.com熱心網友回復:
有木有人回答啊,幫幫新手啊uj5u.com熱心網友回復:
以indy10為例,indy9屬性可能不同Connect事件里創建Stream物件,然后賦值給AContext.Data。
Execute事件里取出AContext.Data進行操作。
Disconnect事件里取出AContext.Data進行釋放。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/116084.html
標籤:網絡通信/分布式開發
