日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
在.NET反應(yīng)性框架中實(shí)現(xiàn)LINQ

反應(yīng)性編程和.NET反應(yīng)性框架并不是新事物。它早已經(jīng)為Cells(一種Common Lisp的數(shù)據(jù)流擴(kuò)展),和支持高階反應(yīng)性編程的Python擴(kuò)展Trellis所應(yīng)用。在C#中,程序員在指定異步操作指定回調(diào),或事件處理程序的時(shí)候使用反應(yīng)性編程。在異步操作完成或者事件觸發(fā)的時(shí)候,就會(huì)調(diào)用方法并作為對(duì)該事件的反應(yīng)。

10年的蘇仙網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都營(yíng)銷網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整蘇仙建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“蘇仙網(wǎng)站設(shè)計(jì)”,“蘇仙網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

在.NET反應(yīng)性框架中,LINQ to Object使用IEnumerable和IEnumerator兩個(gè)接口來(lái)迭代數(shù)據(jù)集。枚舉器的MoveNext()方法用于從前一個(gè)元素枚舉到下一個(gè)元素,而Current屬性則用于檢索個(gè)別的元素。這種機(jī)制采取廣泛使用的簡(jiǎn)潔易懂的“拉(pull)”過(guò)程。Erik還發(fā)現(xiàn)IEnumerable有對(duì)偶特性:一個(gè)是可以從集合中提取數(shù)據(jù),同時(shí)可以把數(shù)據(jù)推進(jìn)同樣的集合。這意味著另一種反應(yīng)性編程的方式。

理論上來(lái)說(shuō),IEnumerable接口可對(duì)集合添加對(duì)象,但是由于它的阻塞性所以不能在異步操作中進(jìn)行。那就是為什么該團(tuán)隊(duì)引入了兩個(gè)新的接口:IObservable和IObserver。人們可以把IObserver賦給數(shù)據(jù)集并把它作為IObservable訂閱。當(dāng)一項(xiàng)新的數(shù)據(jù)可用時(shí),就可以通過(guò)傳遞IObservable來(lái)把它壓進(jìn)集合,接著再傳給IObserver。微軟展示平臺(tái)控件小組的開(kāi)發(fā)人員Jafar Husain解釋IObserver模式的使用方法如下:

要遍歷IObservable,你需要做的就是執(zhí)行與IEnumerable相反的操作。創(chuàng)建IObserver,把它賦給IObservable,接著IObservable通過(guò)調(diào)用自身的方法來(lái)把數(shù)據(jù)壓進(jìn)IObserver。在IObservable對(duì)Observer調(diào)用OnUpdate方法的時(shí)候,就相當(dāng)于IEnumerable方法使用關(guān)鍵字yield向IEnumerable傳遞信息。類似地,在IObservable對(duì)Observer調(diào)用OnCompleted方法的時(shí)候,就相當(dāng)于IEnumerable使用關(guān)鍵字break來(lái)表示沒(méi)有數(shù)據(jù)一樣。

這樣做的好處是什么呢?這種方法在處理事件的時(shí)候有著極大的優(yōu)勢(shì)。我們可以把IObserver附加到鼠標(biāo)事件并對(duì)這些事件異步記錄到一個(gè)集合當(dāng)中。接著就可以使用LINQ來(lái)迭代數(shù)據(jù),并進(jìn)行相應(yīng)的處理。要說(shuō)明它在處理GUI事件的威力,Rx框架已經(jīng)在Silverlight Toolkit單元測(cè)試中使用,并包含源代碼,封裝在System.Reactive.dll中。這也將會(huì)包含在.NET 4.0。

軟件架構(gòu)師和天文物理學(xué)家Brian Beckman在視頻采訪Erik Meijer時(shí),證實(shí)了IObservable是連續(xù)的Monad,即IEnumerable Monad的對(duì)偶性。Erik也介紹了如何通過(guò)二元化IEnumerable來(lái)構(gòu)建IObservable 接口。

在.NET反應(yīng)性框架中實(shí)現(xiàn)LINQ就介紹到這里。


分享題目:在.NET反應(yīng)性框架中實(shí)現(xiàn)LINQ
文章源于:http://www.dlmjj.cn/article/djssijd.html