xtd 0.2.0
cancellation_token_source.hpp
Go to the documentation of this file.
1
4#pragma once
6#include "../core_export.hpp"
7#include "../object.hpp"
8#include "../types.hpp"
9
11namespace xtd {
13 namespace threading {
38 class core_export_ cancellation_token_source : public object {
39 struct data;
40 public:
42
44 cancellation_token_source(int32 milliseconds_delay);
45 cancellation_token_source(const time_span& delay);
47
49 cancellation_token_source();
50 cancellation_token_source(const cancellation_token_source& cancellation_token_source);
51 cancellation_token_source& operator=(const cancellation_token_source& cancellation_token_source);
52 ~cancellation_token_source();
54
56
58 bool is_cancellation_requested() const noexcept;
59
60 const cancellation_token& token() const noexcept;
62
64
67
68 private:
69 bool can_be_canceled() const noexcept;
70 threading::wait_handle& wait_handle() noexcept;
71
72 friend class cancellation_token;
73 xtd::sptr<data> data_;
74 };
75 }
76}
Contains xtd::threading::cancellation_token class.
object()=default
Create a new instance of the ultimate base class object.
Encapsulates operating system specific objects that wait for exclusive access to shared resources.
Definition wait_handle.hpp:52
Represents a time interval.
Definition time_span.hpp:29
Contains core_export_ keyword.
#define core_export_
Define shared library export.
Definition core_export.hpp:13
xtd::shared_ptr_object< type_t > sptr
The xtd::sptr object is a shared pointer.
Definition sptr.hpp:25
int32_t int32
Represents a 32-bit signed integer.
Definition int32.hpp:23
The xtd::threading namespace provides classes and interfaces that enable multithreaded programming....
Definition abandoned_mutex_exception.hpp:10
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
constexpr const_pointer data() const noexcept
Gets direct access to the underlying contiguous storage.
Definition read_only_span.hpp:201
Contains xtd::object class.
Contains xtd fundamental types.