共用方式為


MailboxProcessor.TryScan<'Msg,'T> 方法 (F#)

掃描郵件透過查看透過訊息抵達的順序,直到所提供的函式會傳回 Some值。 其他訊息仍在佇列中。

命名空間/模組路徑: Microsoft.FSharp.Control

組件:FSharp.Core (在 FSharp.Core.dll 中)

// Signature:
member this.TryScan : ('Msg -> Async<'T> option) * ?int -> Async<'T option>

// Usage:
mailboxProcessor.TryScan (scanner)
mailboxProcessor.TryScan (scanner, timeout = timeout)

參數

  • scanner
    型別:'Msg -> Async<'T> option

    函式會傳回 None訊息時將略過或 Some郵件是處理及移除從佇列中。

  • timeout
    型別:int

    選擇性逾時 (以毫秒為單位)。 預設為 -1,對應至 Infinite()。

傳回值

非同步的計算 ( 非同步 物件) 該 scanner建置關閉讀取的訊息。

備註

這個方法要在代理程式的主體中使用。 每一個的代理程式最多同時讀取一個裝置可以是使用中,所以不能超過一個的同時呼叫 接收TryReceive掃描TryScan可以是 作用。 內文 scanner函式已被鎖定,它在執行期間,但鎖定被釋放之前執行 非同步的工作流程。

平台

Windows 7、Windows Vista SP2、Windows XP SP3、Windows XP x64 SP2、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Server 2003 SP2

版本資訊

F# 執行階段

支援版本:2.0、4.0

Silverlight

支援版本:3

請參閱

參考

Control.MailboxProcessor<'Msg> 類別 (F#)

Microsoft.FSharp.Control 命名空間 (F#)