Realm C++ SDK 버전 v2.2.0

realm_core_scheduler.hpp

1
2//
3//저작권 2024 Realm Inc.
4//
5// Apache 라이선스, 버전 2.0("라이선스")에 따라 라이선스가 부여됩니다.
6// 라이선스를 준수하는 경우를 제외하고는 이 파일을 사용할 수 없습니다.
7// 다음에서 라이선스 사본을 얻을 수 있습니다.
8//
9// http://www.apache.org/licences/LICENSE-2.0
10//
11// 관련 법률에서 요구하거나 문서로 동의하지 않는 한, 소프트웨어
12// 라이선스에 따라 배포되는 것은 '있는 그대로' 배포됩니다,
13// Express 묵시적이든 어떤 종류의 보증이나 조건도 제공하지 않습니다.
14// 권한을 관리하는 특정 언어에 대한 내용은 라이선스를 참조하세요.
15// 라이선스에 따른 제한 사항.
16//
18
19#ifndef CPPREALM_REALM_CORE_SCHEDULER_HPP
20#define CPPRALM_REALM_CORE_SCHEDULER_HPP
21
22#include <cpprealm/scheduler.hpp>
23
24네임스페이스 영역 {
25 네임스페이스 유틸리티 {
26 클래스 스케줄러;
27 }
28}
29namespace realm::internal {
30
34 구조체 realm_core_scheduler final : 공개 스케줄러 {
39 void invoke(std::function<oid()> &&fn) final;
40
45 [[nodiscard]] bool is_on_thread() const noException final;
46
52 부울 is_same_as(const 스케줄러 *other) const noException final;
53
62 [[nodiscard]] bool can_invoke() const noException final;
63 ~realm_core_scheduler() final = 기본값;
64 realm_core_scheduler() = 삭제;
65 명시적 realm_core_scheduler(std::shared_ptr<util::Scheduler> s) : s(std::move(s)) {}
66 연산자 std::shared_ptr<util::Scheduler>();
67 private:
68 std::shared_ptr<util::Scheduler> s;
69 };
70
71 std::shared_ptr<util::Scheduler> create_scheduler_shim(const std::shared_ptr<scheduler>& s);
72} // 네임스페이스 영역::internal
73
74#endif//CPPREALM_REALM_CORE_SCHEDULER_HPP
정의: realm_core_scheduler.hpp:34
bool is_same_as(const 스케줄러 *기타) const noException final
정의: realm_core_scheduler.cpp:14
bool can_invoke() const noException final
정의: realm_core_scheduler.cpp:21
bool is_on_thread() const noException final
정의: realm_core_scheduler.cpp:10
void invoke(std::function< void()> &&fn) final
정의: realm_core_scheduler.cpp:6
정의: Scheduler.hpp:27