Join Now

This page was last modified 16:52, 20 March 2008.

Talk:Running an Active Object in OpenC

From Forum Nokia Wiki

Not bad but how about this ...

void CPeriodicRunner::DoTick()
	{
	iTotalTicks--;
	printf("Periodic timer %d done\n", iTotalTicks);
	if(iTotalTicks==0)
		{
		CActiveSheduler::Stop(); // break the scheduler loop
		}
	else
		{
		timer.After(iStatus, 1000000);
		SetActive();
		}
	}

And then

void activeClassL()
	{
	CActiveScheduler* scheduler = new (ELeave) CActiveScheduler();
	CleanupStack::PushL(scheduler);
	CActiveScheduler::Install(scheduler);
 
	
	CPeriodicRunner* periodic = CPeriodicRunner::NewL(4);
 
	periodic->Start();
 
	// enter the loop
	CActiveScheduler::Start();
	
	// gets here once the loop ends
	delete periodic;
	periodic = NULL;
 
	// Delete active scheduler
	CleanupStack::PopAndDestroy(scheduler);
 
	}

Ltomuta 18:51, 20 March 2008 (EET)


 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX