acl  3.5.3.0
acl::atomic_long_test类 参考

#include <atomic.hpp>

+ acl::atomic_long_test 的协作图:

class  mythread
 

Public 成员函数

 atomic_long_test (void)
 
 ~atomic_long_test (void)
 
void run (void)
 

静态 Public 成员函数

static void test (void)
 

详细描述

在文件 atomic.hpp125 行定义.

构造及析构函数说明

◆ atomic_long_test()

acl::atomic_long_test::atomic_long_test ( void  )
inline

在文件 atomic.hpp130 行定义.

130 {}

◆ ~atomic_long_test()

acl::atomic_long_test::~atomic_long_test ( void  )
inline

在文件 atomic.hpp131 行定义.

131 {}

成员函数说明

◆ run()

void acl::atomic_long_test::run ( void  )
inline

在文件 atomic.hpp133 行定义.

134  {
135 
136  long long n = count_++;
137  printf(">>n=%lld\r\n", n);
138 
139  n = count_;
140  printf(">>n=%lld\r\n", n);
141 
142  n = ++count_;
143  printf(">>n=%lld\r\n", n);
144 
145  n = --count_;
146  printf(">>n=%lld\r\n", n);
147 
148  n = count_--;
149  printf(">>n=%lld\r\n", n);
150 
151  n = count_;
152  printf(">>n=%lld\r\n", n);
153 
154  count_ -= 1;
155  n = count_;
156  printf(">>n=%lld\r\n", n);
157 
158  printf(">>count > 1 ? %s\r\n", count_ >= 1 ? "yes" : "no");
159  printf(">>1 > count ? %s\r\n", 1 > count_ ? "yes" : "no");
160 
161  int i = 1;
162  count_ = i;
163  n = count_;
164  printf(">>n=%lld\r\n", n);
165  }

被这些函数引用 acl::atomic_long_test::mythread::run().

+ 这是这个函数的调用关系图:

◆ test()

static void acl::atomic_long_test::test ( void  )
inlinestatic

在文件 atomic.hpp183 行定义.

184  {
185  atomic_long_test at;
186  mythread thr1(at), thr2(at), thr3(at);
187  thr1.set_detachable(false);
188  thr2.set_detachable(false);
189  thr3.set_detachable(false);
190  thr1.start();
191  thr2.start();
192  thr3.start();
193  thr1.wait();
194  thr2.wait();
195  thr3.wait();
196  }

引用了 acl::acl::thread::set_detachable(), acl::acl::thread::start() , 以及 acl::acl::thread::wait().

+ 函数调用图:

该类的文档由以下文件生成: