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

            思勤無(wú)邪

            上學(xué)時(shí),因我年齡最小,個(gè)頭也最小,上課時(shí),就像大猩猩堆里的猴一般。如今,這猴偶爾也把最近的一些情況寫在這里。

               :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
              132 Posts :: 1 Stories :: 178 Comments :: 0 Trackbacks

            公告

                 吾日常三省吾身,曰思、曰勤、曰無(wú)邪。

            積分與排名

            • 積分 - 183658
            • 排名 - 141

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

                C++ 一般會(huì)在構(gòu)造函數(shù)里分配資源,在析構(gòu)函數(shù)里釋放資源。但當(dāng)程序/函數(shù)不正常退出時(shí),C++ 不能保證析構(gòu)函數(shù)會(huì)被調(diào)用,這時(shí),可以利用異常,在程序/函數(shù)需要退出時(shí),扔出異常,在異常處理里退出程序/函數(shù),這樣可以使在函數(shù)調(diào)用堆棧上構(gòu)造的對(duì)象正確析構(gòu)。
                示例代碼(摘自advanced linux programming 4.3.2 Thread Cleanup in C++):
            #include <pthread.h>
            class ThreadExitException
            {
            public:
                /* Create an exception-signaling thread exit with RETURN_VALUE. */
                ThreadExitException (void* return_value)
                : thread_return_value_ (return_value)
                {
                }
                /* Actually exit the thread, using the return value provided in the constructor. */
                void* DoThreadExit ()
                {
                    pthread_exit (thread_return_value_);
                }
            private:
                /* The return value that will be used when exiting the thread. */
                void* thread_return_value_;
            };

            void do_some_work ()
            {
                while (1) {
                    /* Do some useful things here */

                    if (should_exit_thread_immediately ())
                        throw ThreadExitException (/* thread’s return value = */ NULL);
                }
            }

            void* thread_function (void*)
            {
                try {
                    do_some_work ();
                }
                catch (ThreadExitException ex) {
                    /* Some function indicated that we should exit the thread. */
                    ex.DoThreadExit ();
                }
                return NULL;
            }



            posted on 2010-06-06 09:21 思勤無(wú)邪 閱讀(761) 評(píng)論(0)  編輯 收藏 引用

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            狠狠色婷婷久久综合频道日韩 | 欧美va久久久噜噜噜久久| 国产亚洲美女精品久久久久狼| 久久久一本精品99久久精品88| 一日本道伊人久久综合影| 久久久久亚洲AV综合波多野结衣| 九九热久久免费视频| 国产精品成人99久久久久| 国产成人精品久久一区二区三区av| 亚洲国产二区三区久久| 久久狠狠色狠狠色综合| 99精品伊人久久久大香线蕉| 午夜不卡888久久| 久久毛片免费看一区二区三区| 亚洲国产日韩欧美久久| 欧美激情一区二区久久久| 久久丫精品国产亚洲av| 伊人久久大香线焦综合四虎| 久久影视国产亚洲| 亚洲精品乱码久久久久久自慰| 久久精品国产亚洲av高清漫画| 久久免费高清视频| 亚洲伊人久久综合中文成人网| 久久久www免费人成精品| 2020久久精品国产免费| 久久精品国产亚洲Aⅴ蜜臀色欲| 国产精品一区二区久久精品涩爱| 蜜臀av性久久久久蜜臀aⅴ | 99久久精品国产高清一区二区| 国产成人久久激情91| 人妻系列无码专区久久五月天| 77777亚洲午夜久久多人| 青青青青久久精品国产 | 精品久久人人爽天天玩人人妻 | 久久天天躁夜夜躁狠狠| 精品九九久久国内精品| 日韩美女18网站久久精品| 久久精品国产亚洲av麻豆色欲| 久久伊人色| 国产69精品久久久久99尤物| 国产成年无码久久久免费|