kernel/eka/euser/cbase/ub_act.cpp
changeset 13 cb3e90eb7d89
parent 0 a41df078684a
child 34 f497542af8e4
equal deleted inserted replaced
0:a41df078684a 13:cb3e90eb7d89
   135 
   135 
   136 or
   136 or
   137 
   137 
   138 2. the active object within the implementation of the Cancel() function.
   138 2. the active object within the implementation of the Cancel() function.
   139 
   139 
       
   140 E32USER-CBase 46 panics may occur if an active object is set active but
       
   141 no request is made on its TRequestStatus, or vice-versa. This panic happens
       
   142 no earlier than the next time that the active scheduler assesses which
       
   143 objects are ready to run, and may happen much later. This panic is termed 
       
   144 a 'stray event' because it indicates that some entity has sent an event 
       
   145 to this thread, but this thread is not in a state ready to handle it.
       
   146 
   140 @see CActive::IsActive
   147 @see CActive::IsActive
   141 @see CActive::RunL
   148 @see CActive::RunL
   142 @see CActive::Cancel
   149 @see CActive::Cancel
       
   150 
       
   151 @panic E32USER-CBase 42 if this active object is already active
       
   152 @panic E32USER-CBase 49 if this active object has not been added to the active
       
   153        scheduler.
   143 */
   154 */
   144 	{
   155 	{
   145 	__ASSERT_ALWAYS(!(iStatus.iFlags&TRequestStatus::EActive),Panic(EReqAlreadyActive));
   156 	__ASSERT_ALWAYS(!(iStatus.iFlags&TRequestStatus::EActive),Panic(EReqAlreadyActive));
   146 	__ASSERT_ALWAYS(IsAdded(),Panic(EActiveNotAdded));
   157 	__ASSERT_ALWAYS(IsAdded(),Panic(EActiveNotAdded));
   147 	iStatus.iFlags|=TRequestStatus::EActive;
   158 	iStatus.iFlags|=TRequestStatus::EActive;