在做效能測試時,需要統計執行一段時間內庫使用鎖的次數、獲取時間戳的次數等。
在做這些庫範圍內的某個動作的次數統計時,如果庫內是多執行緒且動作在多個執行緒內都出現。
可以使用下面的多執行緒安全的計數器
/// counter.h
#ifndef __counter_h__
#define __counter_h__
#include "mutex.h"
class ccounter
;#define count (ccounter::count();)
#endif
/// counter.cpp
#include "counter.h"
cmutex ccounter::s_mutex;
int ccounter::s_count;
void ccounter::count()
在需要統計的地方加上下行即可:
count;
注:ccounter內部通過s_mutex保證了ccounter是執行緒安全的。
最後列印出的s_count值就是目標動作的統計計數值。
簡潔的計數器(多執行緒)
public class handlertest extends activity implements onclicklistener 方法一開始 class myh extends handler super.handlemessage msg runnable r new runnable c...
計數器 智慧型計數器簡介
計數器主要是應用於電子科技領域,計數器是一種運用得比較多的時序邏輯電路。計數器可以對數字進行運算,它是一種沒有辦法顯示計算結果的顯示器。隨著電子科技的不斷發展,現在的計數器也實現了智慧型功能。智慧型計數器的出現幫助我們實現了很多高強度生產問題 複雜的技術問題,並且節約了生產成本和人力成本。智慧型計數...
java併發學習之執行緒安全的計數器
public class count list.add t 啟動執行緒 for thread t list 等待所有執行緒執行完畢 for thread t list catch exception e system.out.println 執行緒不安全 cas.count system.out.p...