7#ifndef MFRAME_1C1490D6_E331_4C8B_A1CC_49D7A5549037
8#define MFRAME_1C1490D6_E331_4C8B_A1CC_49D7A5549037
17#include "./../lang/Object.h"
18#include "./../sys/Thread.h"
19#include "./../util/Future.h"
119 template <
typename E>
122 return *
reinterpret_cast<const Future<E>*
>(src);
133 template <
typename E>
136 return *
reinterpret_cast<Future<E>*
>(src);
154 virtual bool get(
int& result,
int timeout)
override;
213 virtual void completed(
int& result,
void* attachment)
override;
225 virtual void failed(
void* attachment)
override;
277 int timeoutMs = 5000);
物件基底類別
Definition Object.h:63
執行緒類別
Definition Thread.h:49
[Class] 可處理的 Future 實作類別
Definition PFuture.h:76
virtual bool waitDone(int timeout) override
等待異步操作完成
virtual void completed(int &result, void *attachment) override
處理異步操作完成的回調
PFuture(void)
構造一個新的 PFuture 物件
virtual ~PFuture(void) override
銷毀 PFuture 物件
void setFailed(void)
將 Future 標記為失敗狀態
virtual ufm::util::FutureStatus getStatus(void) override
獲取當前 Future 的狀態
virtual void failed(void *attachment) override
處理異步操作失敗的回調
virtual bool setWait(void) override
將 Future 設置為等待狀態
int syncWrite(ufm::io::OutputStream &outputStream, ufm::lang::Readable &readable, int timeoutMs=5000)
執行帶超時的同步寫入操作
virtual void clear(void) override
清除 Future 的狀態
bool isBusy(void) const
檢查 Future 是否處於忙碌狀態
void setCompleted(void)
將 Future 標記為已完成狀態
virtual bool get(int &result, int timeout) override
獲取異步操作的結果
Definition Appendable.h:23
FutureStatus
異步操作狀態列舉,定義 Future 物件的所有可能狀態。
Definition FutureStatus.h:239
[Interface] 提供輸出串流的基本操作方法
Definition OutputStream.h:37
[Interface] 定義資料讀取介面
Definition Readable.h:46
非同步操作結果介面,提供異步任務的監控和結果獲取功能。
Definition Future.h:310