Thinking Different




boost::atomic

정수, 포인터 타입에 대한 산술 연산을 원자적(최소의 접근)으로 가능하게 하는 템플릿 클래스

volatile, interlocked 를 내부적으로 지원하므로 간결하고 사용이 쉽다


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "stdafx.h"
 
#include <boost/atomic.hpp>
#include <boost/thread.hpp>
 
boost::atomic<int> a{ 0 };
 
void thread()
{
    ++a;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    boost::thread t1{ thread };
    boost::thread t2{ thread };
 
    t1.join();
    t2.join();
 
    std::cout << a << std::endl;
 
    return 0;
}




'프로그래밍 언어 > boost' 카테고리의 다른 글

Boost.Bind  (0) 2015.04.30
Boost.Ref  (0) 2015.04.30
Boost.ScopeExit  (0) 2015.04.28
Boost.Pool  (0) 2015.04.28
Boost.Thread  (0) 2015.04.28