1. 程式人生 > >clock()與GetTickCount()的區別與作用

clock()與GetTickCount()的區別與作用

time.h中的宣告:clock_t  clock(void);

這個函式返回從“程式啟動”到“程式中呼叫clock()函式”之間的CPU時鐘計時單元(clock tick)數。

time.h中還定義了一個符號常量——CLOCKS_PER_SEC,它代表每秒鐘有多少個時鐘計時單元(系統時間單位數)。

例如:

clock_t start = clock();

……

clock_t end = clock();

float duration = float(end - start)/CLOCKS_PER_SEC;

duration為……持續的秒數。

GetTickCount()返回從

作業系統啟動到當前所經過的毫秒數。使用前包含windows.h。

  1. //CPU忙閒比1:1
  2.     int busyTime = 10;  
  3.     int idleTime = busyTime;  
  4.     INT64 startTime = 0;  
  5.     while (true){  
  6.         startTime = GetTickCount();  
  7.         while (GetTickCount() - startTime <= busyTime) ;
  8.         Sleep(idleTime);  
  9.     }  

相關推薦

SpringMVCStruts2區別比較總結

req 攔截器 返回 方式 log 編碼 strong 原則 麻煩 1、Struts2是類級別的攔截, 一個類對應一個request上下文,SpringMVC是方法級別的攔截,一個方法對應一個request上下文,而方法同時又跟一個url對應,所以說從架構本身上Spring

Ribbon Nginx 區別使用場景,效能介紹

伺服器端負載均衡 Nginx nginx 是客戶端所有請求統一交給 nginx,由 nginx 進行實現負載均衡請求轉發,屬於伺服器端負載均衡。 既請求由 nginx 伺服器端進行轉發。 客戶端負載均衡 Ribbon Ribbon 是從 eureka 註冊中心伺服器端上獲取服務註

SpringMVCStruts2區別比較

1、Struts2是類級別的攔截, 一個類對應一個request上下文,SpringMVC是方法級別的攔截,一個方法對應一個request上下文,而方法同時又跟一個url對應,所以說從架構本身上SpringMVC就容易實現restful url,而struts2的架構實現起來要費勁,因為St

StringBuffer StringBuilder 區別聯絡及原始碼分析

StringBuffer和StringBuilder的共同點: 1、都是用於操作字串,使用這兩個而不使用String的原因是因為String是Final型別,當對字串操作較多時採用StringBuffer或者StringBuilder。 St

關於Python中***的區別使用

(*)與(**)的區別         一個星(*)表示將引數作為元組來處理;兩個星(**)表示將引數作為字典來處理。 例項 a)在函式引數列表中使用         在函式引數列表中使用*或者**表示將呼叫時傳入的引數組合成一個元組或是字典,然後在

TomcatNginx區別各自的用途.

nginx常用做靜態內容服務和反向代理伺服器,以及頁面前端高併發伺服器。適合做負載均衡,直面外來請求轉發給後面的應用服務(tomcat什麼的),tomcat更多用來做做一個應用容器,讓java web app跑在裡面的東西。大部分適用於靜態資原始檔的訪問(圖片,檔案) to

C++中char型別string區別聯絡

C++中內建了一些基本型別,包含算數型別和空型別。 算數型別(arithmetic type)包含字元、整數型、布林型和浮點數。其中基本的字元型別是char型別,最小尺寸為8位位元組。 C++除了內建型別外,還有抽象資料型別庫,而string則是其中重要的一個標準庫型別。S

gitgithub區別簡介

git和github是兩個完全不同的概念。 git             是一個版本管理工具,是可以在你電腦不聯網的情況下,只在本地使用的一個版本管理工具,其作用就是可以讓你更好的管理你的程式,比如你原來提交過的內容,以後雖然修改了,但是通過git這個工具,可以把你

感知器、logisticsvm 區別聯絡

從感知器談起 對於典型的二分類問題,線性分類器的目的就是找一個超平面把正負兩類分開。對於這個超平面,我們可以用下面的式子來表示, ωTx+b=0 感知器是最簡單的一種線性分類器。用f(x)表示分類函式,感知器可以如下來表示。 f(x)=sign(ωTx+

volatileAtomicIntegerfieldupdater 區別關係

volatile 實現了多執行緒的可見性,用於多執行緒對某個變數的修改 比如bool 值的變化,別的執行緒立即看到,可以退出迴圈之類的後續操作 但是volatile 不是執行緒安全,對其修飾的變數++ 加法減法等操作 保證不了執行緒安全 而AtomicIntegerfi

Codematic2(動軟.Net程式碼生成器)CodeSmith區別聯絡

Codematic2(動軟.Net程式碼生成器)與CodeSmith一開始是用CodeMatic2來生成Model與DAL的,後來使用CodeSmith。現在來比較下這二者的區別與聯絡, 區別: 1 在靈活性方面:CodeSmith更靈活,提供了自定義模板功能。可以按照自定

GetPost區別範例講解

一、 J2EE WEB應用檔案目錄結構 Java Web應用由一組靜態HTML頁、Servlet、JSP和其他相關的class組成,它們一起構成一個大的工程專案。每種元件在

shell指令碼----[][[ ]]的區別聯絡

注意 [ 和test 是 Shell 的內部命令,而[[是Shell的關鍵字。 且 shell 以0作為true返回 #!/bin/bash if [ 0 ];then     echo "0" fi   輸出 0 一、 [  ] 單雙括號 基本要素:   

SessionCookie區別聯絡

關於Cookie Cookie,也稱為HTTPcookie,Web cookie或瀏覽器cookie,是從網站傳送到伺服器並存儲在使用者的Web瀏覽器中的一小部分資料。Cookie用於向網站建立者傳送關於上次訪問網站時使用者以前的活動的資訊。會話是兩個通訊裝置(如使用者計算

mysql 事務 catch到異常 不提交,RollBack()區別過程分析

事務處理,是將操作事件交給資料庫(模擬)執行,直到commit操作,才使得修改實際產生效果,你可以看做是未提交事務都是處於一個臨時庫中進行 回滾是對於同一個事務,如果產生了錯誤,那麼取消這個臨時庫中的操作,不對實際資料產生影響 最主要的區別在於 如果不回滾

matlab中各種括號(),[],{}的區別認識

原文在matlab中,常常會遇到(),[],和{},這個3種符號怎麼區分,怎麼用,這裡我來總結一下,以供參考。[]首先。[]叫中括號,它用來儲存矩陣和向量(vector在C++中也叫容器) 舉個例子,a=[1,2,3],是一個向量,這個向量有3個元素,也可以用a=[1 2 3

clock()GetTickCount()的區別作用

time.h中的宣告:clock_t  clock(void); 這個函式返回從“程式啟動”到“程式中呼叫clock()函式”之間的CPU時鐘計時單元(clock tick)數。 time.h中還定義了一個符號常量——CLOCKS_PER_SEC,它代表每秒鐘有多少個

對象中prototype__proto__從cinstructor的作用區別

image 數獨 繼承 什麽 技術 有一個 proto 是什麽 info 首先先要知道prototype什麽時間才會有 只有在創建函數的時候,每當函數創建的時候才會原型prototype,還有一個constructor,這個不是函數獨有的,對象也有 下面就來說說對象prot

Ubuntu中 sudo updatesudo upgrade的作用區別

最新版 卸載 新的 新版本 下載 就會 pda 列表 ubunt sudo apt-get update 這個命令,會訪問源列表裏的每個網址,並讀取軟件列表,然後保存在本地電腦。我們在新立得軟件包管理器裏看到的軟件列表,都是通過update命令更新的。 update後,

js中的new操作符Object.create()的作用區別

fcm 並不會 copyright 性能 reat 現在 所有 tar tool js中的new操作符與Object.create()的作用與區別 https://blog.csdn.net/mht1829/article/details/76785231 201