• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

STEllAR-GROUP / hpx / #864

12 Jan 2023 03:29PM UTC coverage: 86.354% (-0.2%) from 86.533%
#864

push

web-flow
Merge pull request #6133 from STEllAR-GROUP/background_scheduler

Adding abridged static scheduler that supports running background threads only

263 of 263 new or added lines in 4 files covered. (100.0%)

174319 of 201865 relevant lines covered (86.35%)

1939452.8 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

66.67
/libs/core/thread_pools/src/scheduled_thread_pool.cpp
1
//  Copyright (c) 2017 Shoshana Jakobovits
2
//
3
//  SPDX-License-Identifier: BSL-1.0
4
//  Distributed under the Boost Software License, Version 1.0. (See accompanying
5
//  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6

7
#include <hpx/config.hpp>
8
#include <hpx/schedulers/background_scheduler.hpp>
9
#include <hpx/schedulers/local_priority_queue_scheduler.hpp>
10
#include <hpx/schedulers/local_queue_scheduler.hpp>
11
#include <hpx/schedulers/shared_priority_queue_scheduler.hpp>
12
#include <hpx/schedulers/static_priority_queue_scheduler.hpp>
13
#include <hpx/schedulers/static_queue_scheduler.hpp>
14
#include <hpx/thread_pools/scheduled_thread_pool.hpp>
15
#include <hpx/thread_pools/scheduled_thread_pool_impl.hpp>
16

17
///////////////////////////////////////////////////////////////////////////////
18
/// explicit template instantiation for the thread pools of our choice
19
template class HPX_CORE_EXPORT hpx::threads::policies::local_queue_scheduler<>;
20
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
21
    hpx::threads::policies::local_queue_scheduler<>>;
22

23
template class HPX_CORE_EXPORT hpx::threads::policies::static_queue_scheduler<>;
30✔
24
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
25
    hpx::threads::policies::static_queue_scheduler<>>;
26

27
template class HPX_CORE_EXPORT hpx::threads::policies::background_scheduler<>;
×
28
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
29
    hpx::threads::policies::background_scheduler<>>;
30

31
template class HPX_CORE_EXPORT
32
    hpx::threads::policies::local_priority_queue_scheduler<>;
33
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
34
    hpx::threads::policies::local_priority_queue_scheduler<std::mutex,
35
        hpx::threads::policies::lockfree_fifo>>;
36

37
template class HPX_CORE_EXPORT
38
    hpx::threads::policies::static_priority_queue_scheduler<>;
22✔
39
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
40
    hpx::threads::policies::static_priority_queue_scheduler<>>;
41
#if defined(HPX_HAVE_CXX11_STD_ATOMIC_128BIT)
42
template class HPX_CORE_EXPORT
43
    hpx::threads::policies::local_priority_queue_scheduler<std::mutex,
44
        hpx::threads::policies::lockfree_lifo>;
45
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
46
    hpx::threads::policies::local_priority_queue_scheduler<std::mutex,
47
        hpx::threads::policies::lockfree_lifo>>;
48
#endif
49

50
#if defined(HPX_HAVE_CXX11_STD_ATOMIC_128BIT)
51
template class HPX_CORE_EXPORT
52
    hpx::threads::policies::local_priority_queue_scheduler<std::mutex,
53
        hpx::threads::policies::lockfree_abp_fifo>;
54
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
55
    hpx::threads::policies::local_priority_queue_scheduler<std::mutex,
56
        hpx::threads::policies::lockfree_abp_fifo>>;
57
template class HPX_CORE_EXPORT
58
    hpx::threads::policies::local_priority_queue_scheduler<std::mutex,
59
        hpx::threads::policies::lockfree_abp_lifo>;
60
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
61
    hpx::threads::policies::local_priority_queue_scheduler<std::mutex,
62
        hpx::threads::policies::lockfree_abp_lifo>>;
63
#endif
64

65
template class HPX_CORE_EXPORT
66
    hpx::threads::policies::shared_priority_queue_scheduler<>;
67
template class HPX_CORE_EXPORT hpx::threads::detail::scheduled_thread_pool<
68
    hpx::threads::policies::shared_priority_queue_scheduler<>>;
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc