999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

SharePoint EventHandler調用外部動態鏈接庫的多線程擴展

2011-08-29 05:39:44韓鳳寧
科技傳播 2011年24期
關鍵詞:功能方法

韓鳳寧

同濟大學軟件學院,上海 330027

1 SharePoint EventHandler介紹

EventHandler在SharePoint中起到事件處理的作用。當用戶使用SharePoint進行一些操作時,比如上傳一個文件,EventHandler相應的事件處理函數便會截獲此事件,執行開發人員在此函數中重寫的功能代碼,從而實現一系列動作事件。在SharePoint中,EventHandler依據SharePoint的層次結構和功能分為 Web Level、List Level、ListItem Level、Email,分別繼承了SPWebEventReceiver、SPListEventReceiver、SPItemEventReceiver、SPEmailEventReceiver類。開發人員根據實際需求在相應的子類中實現具體的功能。

2 SPItemEventReceiver類

該類的命名空間為Microsoft.SharePoint.SPItemEventReceiver,用來處理發生在ListItems上的觸發事件。開發人員創建子類,并繼承SPItemEventReceiver類,來實現實際問題中的觸發事件。圖1為SPItemEventReceiver類的結構。

圖1 SPItemEventReceiver類結構

3 ItemAdded調用外部動態鏈接庫出現的問題

當用戶向文檔庫上傳文檔時,要用到SPItemEventReceiver類的ItemAdded()方法去處理文檔上傳時的一系列動作。在實際需求中,會在SharePoint項目中引入外部動態鏈接庫,即調用DLL文件。在此介紹的DLL文件實現的功能是將上傳的文檔進行文字提取,這個文字提取的執行過程將會占用至少1分鐘的時間。如圖2為事件觸發后的一系列過程。

在ItemAdded方法中調用外部動態鏈接庫,在實際項目開發中是經常會遇到的情況,然而這也引起了一些問題。如果外部動態鏈接庫不支持多線程,那將會在執行過程中出現一些異常,從而使上述系列過程不能正常完成。當用戶在上一個過程還未完成時就上傳了第二個文檔,那么這時,第二個文檔的線程會終止掉第一個文檔的線程,造成第一個文檔無法處理完成。

圖2 觸發后處理的事件

4 多線程與ItemAdded方法

ItemAdded本身是支持多線程的,但是由于外部動態鏈接庫的引入,而這個動態鏈接庫并不支持多線程,這就造成多次觸發時,不能正常完成每個文檔上傳后的整個處理過程。這時的解決方法,就是在ItemAdded方法中手動創建線程。每當ItemAdded被觸發,就創建一個線程,來單獨處理本次觸發后的系列過程。由于調用動態鏈接庫的部分是不支持多線程的,所以這部分的執行代碼將被放到共享池中作為共享資源被加鎖。具體執行代碼如下:

5 結論

在Sharepoint EventHandler中支持多線程,可以把占用長時間的觸發過程放到后臺處理,使得EventHandler得以空閑出來去處理下一個觸發過程,而且下一個觸發過程并不會影響上一個過程的執行,這樣就保證了每一個觸發過程單獨完整的執行。

[1]http://blog.csdn.net/forever_kingdom/article/details/4516651.

[2]Multithreading Part 2: Understanding the System.Threading.Thread Class.http://www.c-sharpcorner.com/UploadFile/mmehta/Multithreading211162005044506AM/Multithreading2.aspx.

[3]Scot Hillier.Microsoft SharePoint Building Office 2007 Solutions in C#2005Apress, 2007.

[4]John Holliday,John Alexander.Professional SharePoint 2007 Development Wiley Publishing Inc.

猜你喜歡
功能方法
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
學習方法
關于非首都功能疏解的幾點思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 日韩在线播放中文字幕| 国产福利免费视频| 国产精品内射视频| 91香蕉国产亚洲一二三区| 国产一级毛片yw| 啪啪永久免费av| 欧洲极品无码一区二区三区| 免费AV在线播放观看18禁强制| 色天天综合久久久久综合片| 人妻中文字幕无码久久一区| 91人人妻人人做人人爽男同| 国产精品视屏| 亚洲三级视频在线观看| 成人在线第一页| 国产无码性爱一区二区三区| 欧美亚洲欧美区| 国产福利不卡视频| 91在线中文| 国产白浆在线| 一本久道热中字伊人| 婷婷色在线视频| 在线综合亚洲欧美网站| 国产精品午夜福利麻豆| 91久久青青草原精品国产| 中文字幕在线观看日本| 青青草原国产精品啪啪视频| 夜夜操狠狠操| 亚洲av无码牛牛影视在线二区| 国产综合亚洲欧洲区精品无码| 亚洲美女高潮久久久久久久| 中文无码精品A∨在线观看不卡 | 免费jizz在线播放| 国产第一页第二页| 国产精品成| 国产97视频在线观看| 国产乱子伦一区二区=| 久久伊伊香蕉综合精品| 无码国内精品人妻少妇蜜桃视频| 午夜精品一区二区蜜桃| 97国产成人无码精品久久久| 性网站在线观看| 五月婷婷激情四射| 青青极品在线| 无码网站免费观看| 国产无码性爱一区二区三区| 97精品伊人久久大香线蕉| 草草线在成年免费视频2| 亚洲国产欧洲精品路线久久| 精品午夜国产福利观看| 久久黄色免费电影| 午夜福利视频一区| 丰满人妻被猛烈进入无码| 国产h视频免费观看| 国产原创第一页在线观看| 婷婷六月天激情| 婷婷六月在线| 日韩无码黄色| 91黄视频在线观看| 亚洲乱码精品久久久久..| 精品夜恋影院亚洲欧洲| 99久久精品免费观看国产| 最新国产你懂的在线网址| 伊大人香蕉久久网欧美| 久久综合一个色综合网| 国产精品精品视频| 亚洲不卡影院| av尤物免费在线观看| 亚洲Va中文字幕久久一区| 国产精品一区二区无码免费看片| 成人亚洲视频| 国产二级毛片| 中文字幕免费在线视频| 中文成人无码国产亚洲| 欧美成人综合视频| 视频二区中文无码| 色哟哟国产精品| 欧美中文字幕一区二区三区| 9cao视频精品| 久久久久久高潮白浆| 一本色道久久88综合日韩精品| 亚洲高清中文字幕| 国产av一码二码三码无码|