16 copp::util::uint64_id_allocator alloc;
19 size_t id_num = 3 * (1 << 8) + 100;
22 for (
size_t i = 0; i < id_num; ++i) {
23 uint64_t
id = alloc.allocate();
31#if LIBCOPP_MACRO_ENABLE_MULTI_THREAD
32CASE_TEST(coroutine_task, id_allocator_mt) {
33 copp::util::uint64_id_allocator alloc;
36 std::unique_ptr<std::thread> thds[40];
37 std::set<uint64_t> s[40];
38 for (
int i = 0; i < 40; ++i) {
39 std::set<uint64_t> *sp = &s[i];
40 thds[i].reset(
new std::thread([sp, &alloc]() {
41 size_t id_num = 36768;
43 for (
size_t j = 0; j < id_num; ++j) {
44 uint64_t
id = alloc.allocate();
52 for (
int i = 0; i < 40; ++i) {
57 s[0].insert(s[i].begin(), s[i].end());
constexpr auto size(TCONTAINER &&container) -> decltype(container.size())
#define CASE_EXPECT_EQ(l, r)
#define CASE_TEST(test_name, case_name)
#define CASE_EXPECT_TRUE(c)