mFrame
載入中...
搜尋中...
無符合項目
ufm::io::SimpleInputStream 類別 參考文件

簡易輸入串流實現,支援非同步讀取操作 更多...

#include <SimpleInputStream.h>

類別ufm::io::SimpleInputStream的繼承圖:
ufm::lang::Object ufm::io::InputStream ufm::func::Runnable ufm::lang::Interface ufm::io::SerialPort::InputStream

公開方法(Public Methods)

 SimpleInputStream (void)
 建立一個簡易輸入串流
 
virtual ~SimpleInputStream (void) override
 釋放資源並終止任何進行中的操作
 
virtual bool abortRead (void) override
 中止當前進行中的讀取操作
 
virtual bool readBusy (void) override
 檢查當前是否有讀取操作進行中
 
virtual bool read (ufm::lang::Appendable &appendable, void *attachment, ufm::io::CompletionHandler< int > *handler) override
 非同步讀取資料到指定的可附加物件
 
virtual void run (void) override
 執行讀取操作的實際處理邏輯
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Object
void * operator new (size_t n)
 使用運算子 new 分配記憶體
 
void * operator new (size_t n, void *p)
 在指定記憶體上調用運算子 new
 
virtual ufm::lang::ObjectgetObject (void) override
 取得對應的 Object 物件
 
void delay (int milliseconds) const
 延遲指定的毫秒數進行執行緒等待
 
bool equals (Object *object) const
 判斷與另一物件是否為相同參照(指標型態比較)
 
bool equals (Object &object) const
 判斷與另一物件是否為相同參照(參照型態比較)
 
void wait (void) const
 使當前線程等待直到被通知
 
bool wait (int timeout) const
 等待通知或超時
 
bool yield (void) const
 讓執行緒讓渡控制權給同優先權的下一個執行緒
 
int lock (void) const
 核心鎖定,鎖定期間禁止線程切換
 
int unlock (void) const
 核心解鎖
 
ufm::sys::ThreadcurrentThread (void) const
 取得當前執行緒指標
 
virtual int hashcode (void) const
 返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Interface
virtual ~Interface (void)=default
 虛擬析構函式
 
- 公開方法(Public Methods) 繼承自 ufm::io::InputStream
bool read (ufm::lang::Appendable &appendable, ufm::util::Future< int > &future)
 同步讀取。從輸入串流中讀取一些字節數,並將他們存到寫入緩衝區appendable。
 

保護屬性

int vResult
 讀取操作結果
 
ufm::lang::AppendablevAppendable
 資料接收目標
 

詳細描述

簡易輸入串流實現,支援非同步讀取操作

此類別整合了輸入串流與執行緒執行功能,提供非同步讀取機制。 實現 InputStream 介面以支援標準輸入流操作,並通過 Runnable 介面 實現在單獨執行緒中進行讀取處理和結果回呼。

建構子與解構子說明文件

◆ SimpleInputStream()

ufm::io::SimpleInputStream::SimpleInputStream ( void )

建立一個簡易輸入串流

初始化內部狀態,準備接受讀取請求

函式成員說明文件

◆ abortRead()

virtual bool ufm::io::SimpleInputStream::abortRead ( void )
overridevirtual

中止當前進行中的讀取操作

傳回值
true 成功中止讀取操作
false 無法中止或無進行中的讀取操作

實作 ufm::io::InputStream.

ufm::io::SerialPort::InputStream重新實作.

◆ read()

virtual bool ufm::io::SimpleInputStream::read ( ufm::lang::Appendable & appendable,
void * attachment,
ufm::io::CompletionHandler< int > * handler )
overridevirtual

非同步讀取資料到指定的可附加物件

啟動一個非同步讀取操作,完成後將呼叫指定的處理器

參數
appendable接收讀取資料的目標
attachment使用者自定義附加資料,將在回呼時傳回
handler讀取完成後的回呼處理器
傳回值
true 成功啟動讀取操作
false 無法啟動讀取操作,可能串流忙碌中

實作 ufm::io::InputStream.

ufm::io::SerialPort::InputStream重新實作.

◆ readBusy()

virtual bool ufm::io::SimpleInputStream::readBusy ( void )
overridevirtual

檢查當前是否有讀取操作進行中

傳回值
true 有讀取操作進行中,串流忙碌
false 無讀取操作進行中,串流閒置

實作 ufm::io::InputStream.

◆ run()

virtual void ufm::io::SimpleInputStream::run ( void )
overridevirtual

執行讀取操作的實際處理邏輯

此方法通常在獨立執行緒中被呼叫,執行實際的讀取操作並處理回呼

實作 ufm::func::Runnable.


此類別(class) 文件是由下列檔案中產生: