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