• <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>

            面試準備

            需要準備的知識點:

            1. linux網(wǎng)絡(luò)編程,多線程,僵尸進程

            2. 數(shù)據(jù)庫范式和基本sql語句

            3. 項目

            4. Select,poll

            5. 在fork前加上信號處理函數(shù): 
            signal(SIG_CHLD,   Proc_CHLD); 
            void   Proc_CHLD(int   SIGNO) 
            { 
              int   pid   =   -1; 
              int   stat; 
              while(pid=waitpid(0,   &stat,   WHNONG); 
            } 

            6. MFC消息機制,文檔視圖模型,生死之謎

            7. Pthread_join是等待線程結(jié)束。Wait和waitpid是獲取子進程的退出碼,防止僵尸進程長期存在

            8. .僵尸進程解決辦法:
              4.1 改寫父進程,在子進程死后要為它收尸。具體做法是接管SIGCHLD信號。子進程死后,會發(fā)送SIGCHLD信號給父進程,父進程收到此信號后,執(zhí)行 waitpid()函數(shù)為子進程收尸。這是基于這樣的原理:就算父進程沒有調(diào)用wait,內(nèi)核也會向它發(fā)送SIGCHLD消息,盡管對的默認處理是忽略,如果想響應(yīng)這個消息,可以設(shè)置一個處理函數(shù)。
              4.2 把父進程殺掉。父進程死后,僵尸進程成為"孤兒進程",過繼給1號進程init,init始終會負責清理僵尸進程.它產(chǎn)生的所有僵尸進程也跟著消失。
                  kill -9 `ps -ef | grep "Process Name" | awk '{ print $3 }'`
                  其中,“Process Name”為處于zombie狀態(tài)的進程名。
              4.3 殺父進程不行的話,就嘗試用skill -t TTY關(guān)閉相應(yīng)終端,TTY是進程相應(yīng)的tty號(終端號)。但是,ps可能會查不到特定進程的tty號,這時就需要自己判斷了。
              4.4 實在不行,重啟系統(tǒng)吧,這也是最常用到方法之一。

            getpid() fork()的問題

            fork()函數(shù)用于復制父進程,這個父進程是指當前進程嗎?
            如果是當前進程,為什么我pid=fork()獲得的ID和pid=getpid()獲得的ID不一樣
            pid=fork()與ppid=getppid()獲得的ID也不一樣
            getpid()和getppid()也是分別獲得當前的ID和父ID首先你得理解一個fork調(diào)用會返回兩次,分別在父子進程中返回,并且返回值是不同的。
            而fork以下的代碼如果不加控制,就會分別在父子進程里面都繼續(xù)執(zhí)行下去。
            要有效區(qū)分“當前”進程是父進程還是子進程的方法就是查看fork的返回值。
            假如有一個進程,其pid為100,那么在這個進程來里面調(diào)用getpid()應(yīng)該得到100。
            接下來,該進程調(diào)用了fork(),產(chǎn)生了pid為101的子進程,那么
            在原有的100進程(父)中,fork的返回值是101,也就是子進程的pid;
                再次getpid()得到100,getppid()將得到祖父進程的pid,也就是既不是100,也不是101的其它值。
            在新生的101進程(子)中,剛才產(chǎn)生了它本身的fork的返回值是0;
                再次getpid()得到101,getppid()將得到100。

            **的優(yōu)勢:

            **提供給客戶的不僅僅只是降低員工的需求服務(wù)器綜合維護成本降低,安全,全球化,效率提升。

            自己思考的優(yōu)勢:還可以幫助游戲開發(fā)者,游戲開發(fā)團隊,游戲開發(fā)公司提升知名度,打造游戲開發(fā)者的品牌。舉例,開心農(nóng)場的開發(fā)者實5分鐘公司,開心農(nóng)場在中國風靡,幾乎人人皆知,但是很少有人知道開心農(nóng)場是5分鐘公司開發(fā)的。比如在人人網(wǎng)上,很多人玩開心農(nóng)場,喜歡上開心農(nóng)場,很自然以后人人網(wǎng)出了其他游戲,很多人會因為喜歡開心農(nóng)場而且玩人人上的游戲,這就是所謂的愛屋及烏。但是問題出現(xiàn)了,現(xiàn)在假如5分鐘公司出了一款新游戲,它沒有在人人上發(fā)布運營,本來很多人喜歡開心農(nóng)場,按理會支持5分鐘公司的其他產(chǎn)品,但是由于5分鐘公司知名度不高,很多人不知道開心農(nóng)場是5分鐘公司開發(fā)的,所以如果一旦5分鐘公司把自己的產(chǎn)品發(fā)布到其他平臺,就不一定有很多的受眾。所以對于游戲公司來說,要打造自己的核心品牌,要讓玩游戲的知道該游戲是自己公司開發(fā)的,之后,該公司發(fā)布游戲,就不用受制于運營商了。而**可以提供這個平臺,不僅給游戲公司提供sns連接平臺,更可以通過行云自己的平臺來發(fā)布他們的游戲,**可以只是作為游戲的發(fā)布平臺,游戲的所有者是游戲公司,從而幫助提高游戲開發(fā)公司的知名度。

            posted on 2011-05-30 15:36 MrRightLeft 閱讀(295) 評論(0)  編輯 收藏 引用 所屬分類: 心情日志

            <2011年5月>
            24252627282930
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            導航

            統(tǒng)計

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久电影网一区| 久久婷婷国产剧情内射白浆| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲国产精品无码久久98| 97久久超碰国产精品2021| 99久久亚洲综合精品网站| 亚洲国产天堂久久久久久| 久久久久亚洲AV无码麻豆| 久久久久亚洲爆乳少妇无| 午夜久久久久久禁播电影| 国产综合精品久久亚洲| 久久精品中文字幕一区| 久久久WWW免费人成精品| 三上悠亚久久精品| 2021国内久久精品| 欧美日韩精品久久久免费观看| 亚洲AV成人无码久久精品老人| 久久精品女人天堂AV麻| 99久久人妻无码精品系列蜜桃 | 免费一级做a爰片久久毛片潮| av国内精品久久久久影院| 久久婷婷五月综合国产尤物app| 久久播电影网| 成人国内精品久久久久影院VR| 久久久久高潮毛片免费全部播放| 亚洲Av无码国产情品久久| 草草久久久无码国产专区| 精品人妻久久久久久888| 久久综合综合久久综合| 婷婷国产天堂久久综合五月| 国内精品久久久久久中文字幕 | 久久午夜综合久久| 狠狠久久综合| 久久久久婷婷| 亚洲欧美国产精品专区久久| 无夜精品久久久久久| 午夜视频久久久久一区 | 99久久免费国产精品热| 国产精品福利一区二区久久| 国产精品禁18久久久夂久| 9久久9久久精品|