- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Async FrameworkHand-offHistoryGroup wanted a new Filtering Server to improve performance - FusionAvoid all blocking callsMinimal internal lockingPut tasks on working queues to maximize CPU usageAvoid using any existing libraries, including WIFFLEDeveloped by several developers over a year periodAsync IOResourcesTasksTask PoolFoundation ClassesMany taken from WFC BaseCallback driven or wait on an eventBasic ConceptsMultiple requests to be sent on one connection without blockingRequires each message to be completeCan not have half a message mixed with the other half of a messageMultiple responses returned without blockingEach message has a Unique ID so the caller can match the sent request with the received responseAsync IORequires message to have distinct begin and endWisp msg have length field as first elementState Server msg have length field as first element tooCurrently using unsigned short so 65535 byte limit on msgRequires msg type if more than one type of msg can be sent on a single connectionWISP msg types 0xAE = Dynamic Log EX0xAF = URL category Lookup V6 EXTCP / UDP MessageTell system you want to add/delete an eventPipe signals poll to wake upNew event added Poll (Unix) / IO Completion Ports (Windows)System waits on eventEvent is triggered and callbacks calledSystem puts all events back on poll and waits againCycle of lifeState Diagram of AsyncDifferent implementations for Windows and LinuxMethods to add readers, writers, and closers to poll / IO completion port listSelectForever() – heart of AsyncAsyncIOSelectForever()Get all active readers and writersDetermine next timeout and call poll()Wakeup on eventCheck for errorsDo callbacks on active eventsHandle any timeout eventsRinse - RepeatAsyncIOHandler Actions to be called on certain eventsRequestOperation – Setup an operation so it can be added to pollHandleOperationDone – Poll returned data that needs actionHandleOperationFailed – Need to handle an errorHandleOperationTimedout – Need to handle socket timeo
您可能关注的文档
- “研究性学习”的目标定位及实施途径16小学教育专业(学位论文)范文.doc
- 《Allegro Fast loadsave of Policy Cache files》.pptx
- 《Categorization Engine Library》.pptx
- 《Comparative Analysis of Site Search on Major E-commerce Sites in China》.doc
- 《Directory Aggregation Service》.pptx
- 《GNSS多频观测数据对电离层修正延迟分析》.ppt
- 《Separate Filtered Locations》.pptx
- 《WSG 7.6 Training – Hybrid》.pptx
- 《毕业设计文档规范解析》.ppt
- 《上海立信会计学院本科生毕业论文(设计)成绩评定表》填表说明.doc
文档评论(0)