• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            08年08月12日

            Posted on 2008-08-12 20:09 RichardHe 閱讀(1579) 評論(8)  編輯 收藏 引用
            原因:今天游戲出現一個很嚴重的BUG,就是通過帳號服務器驗證時,有時候驗證完以后進入角色選擇時,竟然出現別人的帳號角色;
            這可不是一個小BUG,對于一個程序員來說可是致命的錯誤;由于在本地服務器測試時,同時通過驗證帳號服務器的消息是十分少的,
            所以在本地一開始沒發現這個BUG;還有就是看來我在程序中使用全局變量實在是不好,才使得這個BUG沒及時發現.
            問題是這樣產生的,如果很多消息同時過來請求帳號服務器,那在那個唯一一個對應帳號的數字ID為最后一個.而在登錄LOGIN中的帳號
            和ID傳遞時的ID和本身的ID是不一樣的,所以才會出現這個帳號對應別人的角色列表.我恨,這個問題沒意識到.

            解決:先在傳遞的時候把帳號和ID綁定,或者用一個HASH_MAP把帳號和ID和服務器列表保存起來,再轉到LOGIN服務器是時再根據用戶
            名找到他的ID,從而再轉角色服務器.這樣就不會錯了!


            Feedback

            # re: 08年08月12日  回復  更多評論   

            2008-08-12 20:42 by lonkil
            這個Bug可不是一般的Bug。

            # re: 08年08月12日  回復  更多評論   

            2008-08-12 20:46 by 陳梓瀚(vczh)
            囧,我的程序是完全沒有全局變量的,不得不有的那幾個要么就是singleton專門用來初始化一些必要的API調用,要么在占有的時候絕對會有critical section。我保證在所有new操作在main開始之后開始,所有delete操作在main結束之前結束。

            # re: 08年08月12日  回復  更多評論   

            2008-08-12 21:08 by RichardHe
            @lonkil
            是的啊..真汗顏啊!

            # re: 08年08月12日  回復  更多評論   

            2008-08-12 21:13 by RichardHe
            @陳梓瀚(vczh)
            弄同步確實是個好方法,不過有時候對方的程序就是異步,弄的你也只能這樣.
            呵呵..向你學習了!

            # re: 08年08月12日  回復  更多評論   

            2008-08-13 11:17 by abettor
            @陳梓瀚(vczh)

            囧,我的程序是完全沒有全局變量的,不得不有的那幾個要么就是singleton專門用來初始化一些必要的API調用,要么在占有的時候絕對會有 critical section。我保證在所有new操作在main開始之后開始,所有delete操作在main結束之前結束。

            ——好習慣!現在如果還在面向對象的程序里大量泛濫的使用全局變量,那恐怕肯定是要出問題的了。singleton雖然有點矯情,但是是非常有效的。我的方法是,singleton中的對象必須用get/set訪問,而get/set方法本身就是synchorized的。這樣一來,大家用起來就省心又放心了。

            # re: 08年08月12日  回復  更多評論   

            2008-08-13 12:29 by RichardHe
            @abettor
            而get/set方法本身就是synchorized的???

            具體怎么實現的啊?

            # re: 08年08月12日  回復  更多評論   

            2008-08-13 12:31 by 空明流轉
            一定要同步。vc說的對。

            # re: 08年08月12日  回復  更多評論   

            2008-08-13 13:23 by RichardHe
            @空明流轉
            我也知道同步當然是好了.但是對方處理的不是同步.所以我們這邊也只能對它單獨處理了.能同步的話什么問題都解決了.

            posts - 94, comments - 138, trackbacks - 0, articles - 94

            Copyright © RichardHe

            久久精品免费一区二区| 欧美国产成人久久精品| 好属妞这里只有精品久久| 久久青青草原综合伊人| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 人妻无码αv中文字幕久久琪琪布| 狠狠色丁香婷婷久久综合| 久久久久AV综合网成人| 日本五月天婷久久网站| 国产亚洲欧美成人久久片| 久久亚洲精品无码观看不卡| 精产国品久久一二三产区区别| 蜜桃麻豆www久久| 午夜精品久久久久久99热| 久久青青草原国产精品免费 | 久久精品中文字幕无码绿巨人| 国产激情久久久久影院老熟女| 亚洲va中文字幕无码久久不卡| 国产一区二区精品久久岳| 久久国产精品77777| 少妇人妻综合久久中文字幕| 久久婷婷五月综合色99啪ak | 香港aa三级久久三级老师2021国产三级精品三级在 | 久久一区二区免费播放| 久久成人精品视频| 久久亚洲私人国产精品vA| 久久国产精品无| 亚洲国产婷婷香蕉久久久久久 | 久久无码高潮喷水| 久久精品国产亚洲AV影院| 伊人久久综在合线亚洲2019 | 99久久99这里只有免费的精品| 亚洲国产成人久久综合一区77| www.久久热.com| 99久久婷婷国产综合亚洲| 久久综合国产乱子伦精品免费| 久久精品国产色蜜蜜麻豆| 亚洲精品乱码久久久久久久久久久久| 思思久久99热只有频精品66| 久久亚洲精品无码aⅴ大香| 奇米影视7777久久精品人人爽|