亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? framework.txt.svn-base

?? 在Diameter3588協(xié)議的基礎上開發(fā)的軟件
?? SVN-BASE
字號:
/*!\mainpage Framework API for Multithreading Task and Protocol State Machine\author Yoshihiro Ohba\date Created: December 1, 2003\date Updated: January 10, 2004\section IntroductionThis framework API provides a general way to implement communicationprotocols in multithreading environments.  The API contains threesub-APIs, i.e., job sub-API, task sub API and state machine sub-API.The job sub-API defines a generic processing element that can be usedfor any purpose.The task sub-API provides the functionality to execute jobs in amultithreading environment.The state machine sub-API provides the functionality to define andexecute state machines of any types.Any protocol implementation in Open Diameter should be written byusing this framework API in order to reduce development time andimprove manageability of the entire source tree.\section tagJob Job Sub-APIA job is an object that has an operation to execute.  The operationcan be executed by any entity including a task (\ref tagTask) or someother job).  AAA_Job is the base class for any job and provides thefollowing basic methods:- <b>Serve</b> method.  The operation that is executed by an executing entity.- <b>Schedule</b> method.  This method is used for requesting a jobexecuting entity to schedule the job so that the Serve() method willbe called by the entity.- <b>ExistBacklog</b> method.  This method indicates whether thereis any outstanding operation for this job.- <b>BacklogSize</b> method.  This method indicates the current numberof outstanding operations for this job.- <b>Name</b> method.  This method is used for setting or getting thename of the job.- <b>Data</b> method.  This method is used for setting or getting thedata of the job.- <b>Priority</b> method.  This method is used for setting or gettingthe priority of the job.  The priority is used for scheduling the job.- <b>Weight</b> method.  This method is used for setting or gettingthe weight of the job.  The weight is used for scheduling the job.\subsection tagQueueJob Queue JobA queue job is a job that has a queue to store entries of any type.The type of entries stored in the queue is specified as templateparameter.  The framework API defines two queue entry types asbuilt-in types, job and event, that are used by AAA_GroupedJob andAAA_StateMachineWithTask classes.  The queue job class supports FIFO,WFQ (Weighted Fair Queueing) and priority queueing disciplines byusing the two parameters "priority" and "weight".  An entry withhigher priority is always dequeued earlier than an entry with lowerpriority.  Among the entries with the same priority, an entry withhigher weight has a greater chance to be dequeued thatn an entry withlower weight.  The AAA_QueueJob class has the following methods inaddition to the methods derived from AAA_Job:- <b>Enqueue</b> method.  This method is used for storing an event tothe event queue.  Both blocking and non-blocking enqueue operationsare supported.- <b>Dequeue</b> method.  This method is used for obtaining an eventfrom the event queue.  Both blocking and non-blocking dequeueoperations are supported.- <b>Flush</b> method.  This method is used for flushing the eventqueue.- <b>Remove</b> method.  This method is used for removing a specifiedentry from the event queue.  In the case where multiple copies of thesame entry is enqueued, the all copies are removed.- <b>MaxSize</b> method.  This method is used for obtaining the maximumqueue size in the number of entries.\subsection tagGroupedJob Grouped JobA grouped job is a queue job that has a queue to store other jobs andhas a parent job for which it requests scheduling on behalf of otherjobs.  The grouped job is used for constucting a job hierarchy.AAA_SchedulingPolicy parameter is used for specifying the jobscheduling discipline.  The grouped job is used for job serializationand job scheduling.\subsection tagJobHandle Job HandleA job handle provides a safe way to deallocate memory for job objects,where memory deallocation can occur even in the constuctor of anobject of a class that creats a job.  When the handle is deleted, thehandle calls AAA_JobDeleter() function which performs a deleteoperation with treating the job as a shared object (i.e., if the jobis not deleted until the job is not owned by any objects.).\subsection tagQueueJob Queue Job\section tagTask Task Sub-APIA task is an active object that generates threads for executing joboperations.  It consists of one thread (referred to as the timerthread) that handles timer events and one or more thread (eachreferred to as a job serving thread) that execute job operations.  Atask has a root job for which Serve() method is called by the jobserving threads.  AAA_Task provides the following basic methods:- <b>Start</b> method.  This method is used for starting the task.- <b>Stop</b> method.  This method is used for stopping the task.Jobs are not allowed to enter the task storage. Jobs that have beenalready entered in the task storage will be served.- <b>ScheduleTimer</b> method.  This method is used for scheduling atimer event.  The timer event will be served by the timer thread.- <b>CancelTimer</b> method.  This method is used for canceling atimer event that has been scheduled by ScheduleTimer method.\image html task-1.gif "Figure 1: AAA_Task"\section tagStateMachine State Machine Sub-APIA state machine is a general component to implement arbitrarycommunication protocols.  A state machine consists of a statetransition table and a set of state variables.\subsection tagStateTable State TableA state transition table (or simply a state table in this document)defines the behavior of the target protocol.  Each entry of a statetable is defined as AAA_StateTableEntry and has the followingattributes:- <b>Current State</b> A 32-bit unsigned integer that represents thestate where the state machine stayed immediately before receiving the event.- <b>Event</b> A 32-bit unsigned integer that represents an event the state machine is allowed to receive in the current state.- <b>Next State</b>  A 32-bit unsigned integer that represents thenext state to which the state machine moves after receiving the event.- <b>Action</b> A functor that contains the operation performed whenthe state machine accepts the event.  An action can take a singleargument of arbitrary type.  Action is defined as a template classAAA_Action.  An example action class definition is shown below.\code/// Action class for EAP. class EapAction : public AAA_Action<EapSession>{ public:  virtual void operator()(EapSession&) {} protected:  EapAction() {}  virtual ~EapAction() {}};\endcode- <b>isWildcardEvent</b> A boolean variable that indicates whether theentry accepts any event.In addition, one of the Current State values in the state table ischosen as the <b>Initial State</b> where the state machine starts itsoperation.The base class for state table is AAA_StateTable.State machines objects of the same class should share the same statetable objects to save the memory resources.  For this purpose, it isbetter to define state table classes as singletons.Figure 2 shows an example state table.  An event "*" indicates anwildcard event which matches any event.  An action "null action"indicates an action that performs no operation.\image html statemachine-1.gif "Figure 2: State Table"AAA_StateTable class provides the following methods for tablemanipuration:- <b>AddStateTableEntry</b> method.  This method is used for adding astate table entry with a specific event.- <b>AddWildcardStateTableEntry</b> method.  This method is used foradding a state table entry with a wildcard event.- <b>InitialState</b> method.  This method is used for setting andgetting the initial state.- <b>FindStateTableEntry</b> method.  This method is used for findinga state table entry that matches a particular current state and anevent.\subsection tagStateMachine State MachineA state machine has the following basic methods:- <b>Start</b> method.  This method is used for starting the state machine.- <b>Stop</b> method.  This method is used for stopping the state machine.- <b>Restart</b> method.  This method is used for restarting the state machine.- <b>Running</b> method.  This method indicates whether the state machine has been started and not been stopped.- <b>Event</b> method.  This method is used for passing event to thestate machine.  Within this method, the state table is looked up andthe action corresponding to the current state and the received eventwill be executed.The base state machine class is defined as AAA_StateMachineBase.Other state machine classes are derived from the base class anddefined as template class in which the action argument type is used asthe template parameter.  The base class of templated state machine isAAA_StateMachine<ARG>.\subsection tagStateMachineWithTimer State Machine With Timer HandlingA state machine with timer is a state machine that is capable ofgenerating and deleting timer events.  Timer events generated by the astate machine with timer will be bound to an ACE_Reactor, which istypically a reactor created by the timer thread in a task (\reftagTask).Timer events are categorized into timer types (the default timer typeis zero(0)).  The state machine stores at most one timer event foreach timer type.  A unique timer type is allocated by using timer typeallocator (defined in AAA_TimerTypeAllocator_S andAAA_TimerTypeAllocator classes).The AAA_StateMachineWithTimer<ARG> is the base class for state machinewith timer and provides the following methods:- <b>ScheduleTimer</b> method.  This method is used for scheduling atimer event.- <b>CancelTimer</b> method.  This method is used for scheduling atimer event.A sample program that uses the framework API is shown below.\include diameter_eap_server_fsm.hxx\include diameter_eap_server_fsm.cxx\include server_test.cxx*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
爽好多水快深点欧美视频| 国产一区二区在线免费观看| 久久不见久久见中文字幕免费| 综合欧美亚洲日本| 亚洲欧美在线另类| 国产精品国产三级国产有无不卡| 久久伊人中文字幕| 久久午夜羞羞影院免费观看| 日韩一二三区视频| 日韩欧美高清dvd碟片| 日韩免费高清av| 日韩欧美久久一区| 欧美成人精品二区三区99精品| 日韩一级欧美一级| 久久综合五月天婷婷伊人| 久久一区二区三区国产精品| 久久亚洲二区三区| 久久综合狠狠综合| 日本一区二区三区久久久久久久久不 | 精品国产乱码久久久久久牛牛| 日韩一本二本av| 久久久久久久电影| 国产精品免费视频观看| 国产精品夫妻自拍| 一区二区欧美视频| 日韩精品久久理论片| 久色婷婷小香蕉久久| 韩国精品久久久| 不卡的av在线播放| 欧美四级电影在线观看| 91精品视频网| 久久精品一区二区三区不卡 | 亚洲成在人线在线播放| 亚洲18影院在线观看| 青青草国产成人99久久| 国产乱国产乱300精品| 成人教育av在线| 欧美人与z0zoxxxx视频| 国产三级精品视频| 一区二区三区视频在线看| 麻豆国产欧美日韩综合精品二区| 国产99久久久精品| 欧美日韩中文精品| www激情久久| 国产成人在线免费观看| 色天使色偷偷av一区二区| 日韩一区二区精品| 亚洲女人小视频在线观看| 美女高潮久久久| 97久久久精品综合88久久| 欧美日韩你懂得| 国产清纯在线一区二区www| 亚洲欧美色图小说| 秋霞成人午夜伦在线观看| 精品一区二区免费视频| 日韩精品成人一区二区在线| 国产乱一区二区| 欧美亚洲图片小说| 精品av久久707| 亚洲激情图片一区| 韩国成人在线视频| 一本在线高清不卡dvd| 欧美人牲a欧美精品| 久久免费视频色| 中文字幕中文乱码欧美一区二区| 青青草国产成人av片免费| 国产大陆亚洲精品国产| 欧美视频一区二区三区在线观看| 日韩欧美激情在线| 亚洲男人的天堂在线aⅴ视频| 热久久国产精品| 91婷婷韩国欧美一区二区| 欧美一三区三区四区免费在线看| 久久久av毛片精品| 亚洲国产人成综合网站| 日韩激情一二三区| 成人的网站免费观看| 制服丝袜亚洲网站| 亚洲视频一区二区免费在线观看| 秋霞午夜鲁丝一区二区老狼| 91小宝寻花一区二区三区| 精品国产凹凸成av人网站| 亚洲精品国产精华液| 国产精品69久久久久水密桃| 欧美人狂配大交3d怪物一区| 国产欧美精品一区二区三区四区| 美女视频黄免费的久久| 色综合夜色一区| 久久久久久9999| 天堂影院一区二区| 一本一本久久a久久精品综合麻豆| 精品国产乱码久久久久久1区2区| 日本美女一区二区| 欧美专区亚洲专区| 一区二区三区在线视频免费| 粉嫩高潮美女一区二区三区 | 欧美国产1区2区| 韩国欧美国产1区| 欧美日本国产视频| 日日夜夜一区二区| 91福利精品视频| 亚洲激情图片一区| 91丨九色丨黑人外教| 337p日本欧洲亚洲大胆精品| 免费在线欧美视频| 91论坛在线播放| 亚洲理论在线观看| av不卡在线播放| 亚洲男女毛片无遮挡| 国产精品一卡二| 欧美国产在线观看| 成人晚上爱看视频| 最新日韩av在线| 成人的网站免费观看| 亚洲欧美乱综合| caoporn国产精品| 亚洲蜜臀av乱码久久精品| 成人国产一区二区三区精品| 亚洲视频 欧洲视频| 99精品在线观看视频| 亚洲欧洲精品成人久久奇米网| 不卡av电影在线播放| 国产三级欧美三级| www.爱久久.com| 亚洲人妖av一区二区| 一本大道久久a久久精品综合| 亚洲视频每日更新| 欧美色倩网站大全免费| 偷窥少妇高潮呻吟av久久免费| 日韩午夜电影av| 国产在线播精品第三| 国产视频在线观看一区二区三区| 国产成都精品91一区二区三| 国产精品国产三级国产有无不卡 | 国产精品99久久久久久久女警 | 国产 欧美在线| 亚洲精品欧美专区| 欧美日韩国产一级片| 精品一区二区综合| 久久久国产综合精品女国产盗摄| av男人天堂一区| 亚洲一区二区三区激情| 精品人在线二区三区| 东方欧美亚洲色图在线| 一区二区三区毛片| 这里是久久伊人| 成人视屏免费看| 一区二区三区**美女毛片| 欧美情侣在线播放| 日av在线不卡| **网站欧美大片在线观看| 在线观看日韩毛片| 精品伊人久久久久7777人| 国产精品美女久久久久久久| 91成人网在线| 偷拍一区二区三区四区| 中文子幕无线码一区tr| 91搞黄在线观看| 麻豆久久一区二区| 国产精品国产精品国产专区不蜜 | 国产成人精品aa毛片| 亚洲精品成a人| 精品入口麻豆88视频| 99re视频精品| 美女一区二区三区在线观看| 欧美福利视频导航| 国产高清成人在线| 亚洲国产精品尤物yw在线观看| 国产目拍亚洲精品99久久精品| 色av成人天堂桃色av| 精品一区二区三区免费| 亚洲激情自拍视频| 久久久久久久久久看片| 在线观看免费亚洲| 国产精品资源在线看| 亚洲电影视频在线| 国产精品久线在线观看| 777a∨成人精品桃花网| 成人自拍视频在线| 青青草成人在线观看| 国产激情一区二区三区| 亚洲成a人片在线观看中文| 国产日韩v精品一区二区| 欧美在线视频不卡| 成熟亚洲日本毛茸茸凸凹| 六月丁香婷婷色狠狠久久| 一区二区三区四区视频精品免费 | 久久久精品免费网站| 欧美三片在线视频观看| 国产成人免费视频一区| 日韩精品视频网站| 一区二区在线观看不卡| 久久久久综合网| 日韩一区二区三| 91黄色激情网站| 国产91丝袜在线播放| 黄色日韩网站视频| 日韩国产高清影视| 亚洲一区在线视频观看| 国产精品福利电影一区二区三区四区|