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

            MyMSDN

            MyMSDN記錄開發(fā)新知道

            計時器代碼片段

            這不是一個面向?qū)ο蟮拇a庫,它的存在僅僅只是為了說明幾個函數(shù)調(diào)用,如果要在您的工程中應(yīng)用相關(guān)內(nèi)容,請自行構(gòu)建(這應(yīng)該不難),或者看看我推薦的文檔。

            // ProcessAffinity.cpp : 定義控制臺應(yīng)用程序的入口點。
            //
            
            #include "stdafx.h"
            #include <windows.h>
            #include <iostream>
            #include <vector>
            
            using namespace std;
            void DisplayFrequency(ostream &out, LARGE_INTEGER &freq);
            
            struct TimeSpan
            {
                LARGE_INTEGER *Frequency;
                LARGE_INTEGER StartCounter;
                LARGE_INTEGER StopCounter;
                BOOL HAS_ERROR;
                double CalTimeSpan(){
                    return (StopCounter.QuadPart - StartCounter.QuadPart)/Frequency->QuadPart;
                }
            };
            
            int _tmain(int argc, _TCHAR* argv[])
            {
                HANDLE CurrentProcessHandle;
                DWORD ProcessAffinityMask, SystemAffinityMask, AllowProcessAffinity;
            
                CurrentProcessHandle = GetCurrentProcess();
            
                //GetCurrentProcess返回一個常量,代表當(dāng)前的進程句柄
                cout<<CurrentProcessHandle<<endl;
                cout<<(HANDLE)-1<<endl;
                cout<<(void*)-1<<endl;
                cout<<(void*)0xffffffff<<endl;
            
                cout<<"-----------------------------"<<endl;
            
                if(GetProcessAffinityMask(CurrentProcessHandle, &ProcessAffinityMask, &SystemAffinityMask))
                {
                    cout<<ProcessAffinityMask<<endl;    //0x0001
                    cout<<SystemAffinityMask<<endl;        //0x0001
                
                    AllowProcessAffinity = ProcessAffinityMask & SystemAffinityMask;
                    cout<<AllowProcessAffinity<<endl;
                }
            
                LARGE_INTEGER Freq;
                typedef vector<LARGE_INTEGER> FreqVec_type;
                FreqVec_type FreqVec;
                
                while(FreqVec.size() != 5)
                {
                    if(QueryPerformanceFrequency(&Freq))
                    {
                        DisplayFrequency(cout, Freq);
                        FreqVec.push_back(Freq);
                    }
                    Sleep(1000);
                }
            
                for(FreqVec_type::iterator iter = FreqVec.begin(); iter!=FreqVec.end(); ++iter)
                {
                    DisplayFrequency(cout, *iter);
                }
            
                cout<<"---------------------"<<endl;
            
                //calculate the timeSpan;
                TimeSpan ts;
                int sleepTime(3123);
            
                ts.Frequency = &Freq;
            
                if(QueryPerformanceCounter(&ts.StartCounter))
                {
                    ts.HAS_ERROR = false;
                    Sleep(sleepTime);
                }
                if(!ts.HAS_ERROR)
                {
                    QueryPerformanceCounter(&ts.StopCounter);
                }
                
                cout<<ts.CalTimeSpan()<<endl;
                cout<<(ts.StopCounter.QuadPart-ts.StartCounter.QuadPart)/sleepTime<<endl;
            
                return 0;
            }
            
            void DisplayFrequency(ostream &out, LARGE_INTEGER &freq)
            {
                out<<"start display!"<<endl;
                out<<freq.HighPart<<endl;
                out<<freq.LowPart<<endl;
                out<<freq.QuadPart<<endl;
                out<<"end display!"<<endl;
            }
            
            

            推薦文檔:《使用增強的計時器測量代碼段》(下載可適合打印,已排版,閱讀該文檔需要使用Microsoft Word 2007或相關(guān)閱讀器(后綴docx),如您需要pdf文檔,可以給我留言,我會將它發(fā)給你,在CSDN的下載中,您可能需要注冊成為相關(guān)網(wǎng)站的會員,或者使用積分,如果您覺得麻煩,可以直接向我索取!點此獲取!

            posted on 2009-02-19 01:49 volnet 閱讀(653) 評論(0)  編輯 收藏 引用


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


            特殊功能
             
            jizzjizz国产精品久久| 久久精品视频91| 久久精品中文騷妇女内射| 99久久777色| 国内精品久久久久影院老司| 久久夜色精品国产噜噜麻豆| 色综合久久久久| 久久综合给久久狠狠97色| 久久久久久A亚洲欧洲AV冫| 狠狠色婷婷久久综合频道日韩| 久久精品国内一区二区三区| 久久精品国产免费观看 | 伊人久久成人成综合网222| 久久精品99久久香蕉国产色戒 | 久久青青草原国产精品免费 | 99久久www免费人成精品| 久久精品aⅴ无码中文字字幕不卡| 66精品综合久久久久久久| 97久久婷婷五月综合色d啪蜜芽 | 97超级碰碰碰碰久久久久| 无码日韩人妻精品久久蜜桃| 热综合一本伊人久久精品| 97久久天天综合色天天综合色hd | 久久国产香蕉视频| 亚洲国产精品热久久| 99久久免费国产精精品| 久久综合精品国产二区无码| 亚洲AV无码久久| 亚洲国产欧美国产综合久久| 中文成人无码精品久久久不卡| 久久亚洲2019中文字幕| 久久久久亚洲av毛片大| 国产精品99久久久久久董美香| 久久精品国产只有精品2020| 狠狠色丁香久久综合婷婷| 99久久99久久精品免费看蜜桃 | 国色天香久久久久久久小说| 亚洲婷婷国产精品电影人久久| 欧美久久综合九色综合| 亚洲精品无码久久久久AV麻豆| 午夜精品久久久久久久无码|