国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

NET異步調用Webserver

2019-11-17 02:27:37
字體:
來源:轉載
供稿:網友

NET異步調用Webserver

之前,有個同事跑來問我一堆的什么多線程異步進行調用Sap的服務再突然把進程關閉,還說要設置一個循環判斷調用的結果,搞得我聽的一頭霧水,但是我明顯感覺到他的設計思路已經漸行漸遠了...已經再偏遠的山區中沒有車回來了!無奈 作為了公司新人,我理清了他的需求,就是因為不懂異步調用webserver ,或者說調用了不懂怎么回調函數的事件構造,或者說sap實在太懶,無法給與任何返回,也沒法給與返回。反正不懂 NET開發 和SAP開發 那邊有問題,反正 是真的有問題了!

就這樣的前提下,三四個人來找我...問我之前做的什么異步調用SAP服務的,其實我偏愛同步啊,哈哈· ~ 而且網上信息都是一些比較籠統的說,不講究思維和官網的事件剖析。不利于我這種小生學習掌握~~

然后告訴了他的思路設計錯誤, 我本人是很討厭那種需要別人源碼發給對方的人,不過也算了,凡是自己的思維設計上方向是錯的,有一點是可以讓旁人很清楚的:那就是這個人描述起來是十分復雜,混亂的一個代碼處理邏輯,也會有很多莫名其妙的東西出現。

前后經歷過幾個團隊的成長,我曾經鼓勵自己要了解團隊中大家的思維,這樣彼此能夠更好的互補 做好這個團隊, 但是這人也不是我的部門的,盡力幫忙了~

示例調用委托事件分別有:

  onBeginHelloWorldDelegate、onEndHelloWorldDelegate、onHelloWorldCompletedDelegate:開始, 結束,提交后。

Net底層調用委托:

  ClientBase<TChannel>.BeginOperationDelegate ;ClientBase<TChannel>.EndOperationDelegate ;SendOrPostCallback :被調度到同步上下文時要調用的方法

  

所以異步如果你想要處理 回調與批量調用間的關系,很簡單,可以用HelloWorldAsync重載函數 (string arg, object userState) userState 將會從InvokeAsync帶到,TestWebService.HelloWorldCompletedEventArgs e:

調用代碼: testwebservice.HelloWorldAsync(para.name, para); ----para為調用要給的回調標識實體。

所以,這樣通過這些委托事件的綁定,重載 是可以做到任何個回調或執行開始 結束的 業務處理,也可以自己在該服務命名空間拓展更多復雜的委托 事件回調;

案例分析:

  Net異步調用服務并委托回調收集;第一,要調用的服務不進行任何返回結果;第二,我們要把握好任何執行結果,不排除對方服務關閉;第三, 一定要異步、多線程(存在技術盲,一聽異步多線程就覺得好)。

  方案一: 從代理類進行構造委托進行回調,在async函數中進行委托事件的回調。從頭到腳自立一套委托事件的聲明,愛啥參數就啥參數 愛怎么瞎搞都行。 在system.threading中定義一個委托SendOrPostCallbackTwo及在System中定義一個EventhandlerTwo委托,

在服務代理生成類中進行事件聲明 event_A,及進行構造聲明 OnHelloWorldCompletedTwo(object state,object entity)函數,

在異步調用函數HelloworldAsync中 附加事件判斷或實現,

在HelloWorldCompletedEventArgsTwo中進行構造函數:

代理類調用方式:

回調函數PRocessCompleteThree:

預備的線程池委托類的聲明:

線程池調用:

其實這個方案就是運用委托事件去實現,但是有的人一看到web服務引入生成的那個代理對象里面亂亂的就好好研究他的機制,一般不會采用如此麻煩的回調構造。

方案2是利用線程池委托類的構造函數進行,參數帶入,這樣在回調的時候就知道什么主鍵進行業務處理了。

還有方案3是利用上圖中的e.UserState , 這個是在服務生成對象中的Completed中就會自動生成的, 原理與方案1一樣 。

不多加說明了。

僅作學習之用,轉載請注明出處 。


上一篇:1

下一篇:C#基礎總復習03

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沁源县| 博客| 万全县| 丰台区| 华阴市| 旬邑县| 尤溪县| 南和县| 临朐县| 新昌县| 吉水县| 金寨县| 涡阳县| 图木舒克市| 云林县| 子洲县| 德令哈市| 墨脱县| 沂源县| 同仁县| 平远县| 西畴县| 视频| 阿勒泰市| 灵璧县| 昭通市| 陆川县| 中山市| 眉山市| 开化县| 永康市| 北川| 新源县| 桑日县| 南京市| 梁平县| 皮山县| 绿春县| 张家界市| 建始县| 瑞金市|