精華區beta PCman 關於我們 聯絡資訊
※ 引述《ScottYu (夜光阿特)》之銘言: : PCMan 版本: Pro, XP++ Pro, 2003 Pro 均有此現象... : 作業系統: Microsoft 2000 : 問題簡述: Telnet 多視窗連線僅有一個視窗能正確工作... : 問題描述: 我是 PcMan 的愛用者, 之前使用 PCMan 就一直存在一個問題, : 原先還是正常, 但是當用了一段時間之後, 就會發生這個現象, : 當開啟新的 Telnet 連線視窗後, 之前的連線視窗就不會動作 : 了, 而再開新的視窗, 舊的視窗又不能動作了, 可是再不能工 : 作的視窗按鍵網路卻又顯示有封包傳遞, 因此我同時連上兩個 : 測試, 發現連線還是 connected, 對方也有接收到按鍵, 可是 : 對方的回應卻完全無法看到, 這困擾我許久. : 不知道問題所在, 之前 EmEditor 有時候也會當掉, 我通常採 : 用 Delete User再 Add User 的方式可以暫時解決, 但對這個 : 問題無效, 要重灌作業系統才能解決, 不知道有沒有人跟我有 : 一樣的情況, 因為這已經不是第一次了, 而我又剛灌完作業系 : 統, 沒多久又發生了... 所以... >_<... : 作者似乎很忙, 所以我想有沒有解決都沒關係, 只是想說明一 : 下我所遇到的情況... ^_^ 在很久以前,曾經確實有過這麼一個bug,因為PCMan本身程式設計有誤 但是歷經好幾個月六個測試版之後,找到問題,因為使用了不太正確的寫法導致 後來在新版的PCMan中改寫了整個處理網路資料的部分,使用正確的寫法 經過長期測試也沒有問題,之後那段程式就沒再更動過,而程式使用的也是基本的Winsock 初步認定應該不會有什麼嚴重錯誤,事實上只使用基本的Winsock應該不會有什麼大問題 所以這個問題在純BBS的版本後來確實沒再發生,但Pro的版本因為加上了瀏覽器支援 IE本身有用到一些multithreading,所以我多做了一點點很基本的synchronize動作 設計的確實不是很好,'當開啟新網頁,而該網頁由於IE本身問題當住的時候,就會連帶 其他東西一起被影響,偶爾會發生卡住的情況,但卡住是指無法切換到其他連線 並非其他連線失效,這種情況也很少發生,至於BBS的部分,為了節省記憶體, 所以各連線接收資料時共用buffer,但是就Winsock本身的設計,不會有synchronize的問題 各sock也不會同時用到buffer所以應該可以這樣用,新版Windows的Sock是否有改變此模式? 應該是不會改才對,否則會影響太多現存的程式,所以也應該不是這個問題造成, 我還是認為程式本身應該沒有問題,但是我沒把握我說的對不對,因為網路程式我懂得不多 只是身邊也有不少人在用,確實未曾聽到此種情況,如果使用者確實有封包送出, 而畫面沒有更新,是因為主機沒有回應新的畫面內容,所以PCMan無法顯示新畫面. 既然叫做終端機模擬,要顯示什麼畫面當然由連線的主機負責送過來,然後由終端機呈現 但為什麼主機沒有送來新的畫面,其中細節我就無法得知,說了這麼多, 還是老話一句,小弟才疏學淺,真的是不知道真正的原因,但是我覺得應該不是程式本身有錯 抱歉我只能這樣回答...^^" -- ※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw) ◆ From: 140.129.59.3