• 防止界面卡顿


    void DoEvents()
    {
        MSG msg;
        // Process existing messages in the application's message queue.
        // When the queue is empty, do clean up and return.
        while (::PeekMessage(&msg,NULL,0,0,PM_NOREMOVE))
        {
            if (!AfxGetThread()->PumpMessage())
                return;
        }
    }
    
    void Delay(DWORD time)
    {
        DWORD t=::GetTickCount();
        while(::GetTickCount() -t < time)
        {
            DoEvents();
        }
    }
    void CMainFrame::DelayTCount(int tcount)
    {
        DWORD dwStart = GetTickCount();
        DWORD dwEnd   = dwStart;
        do
        {
            MSG   msg;
            GetMessage(&msg,NULL,0,0);
            TranslateMessage(&msg);
            DispatchMessage(&msg);
            dwEnd = GetTickCount()-dwStart;
        }while(dwEnd < tcount);
    }
    void CMainFrame::DelayTCount1(double tcount)
    {
        LARGE_INTEGER litmp;
        LONGLONG QPart1,QPart2;
        double dfMinus, dfFreq, dfTim;
        QueryPerformanceFrequency(&litmp);
        dfFreq = (double)litmp.QuadPart;// 获得计数器的时钟频率
        QueryPerformanceCounter(&litmp);
        QPart1 = litmp.QuadPart;// 获得初始值
        do
        {
            QueryPerformanceCounter(&litmp);
            QPart2 = litmp.QuadPart;//获得中止值
            dfMinus = (double)(QPart2-QPart1);
            dfTim = dfMinus / dfFreq;// 获得对应的时间值,单位为秒
        }while(dfTim<tcount);
    }
  • 相关阅读:
    Nginx平滑升级
    svn部署-linux
    svn服务备份与还原
    vmware exsi安装部署
    redis主从复制读写分离
    redis配置文件详解
    zabbix与agent端通信加密
    部署owa预览服务
    zabbix-3.4邮件报警
    centos7--zabbix3.4微信报警
  • 原文地址:https://www.cnblogs.com/profession/p/4633571.html
Copyright © 2020-2023  润新知