Adaptation/GUID-6752A77F-B1D1-49BE-A672-5DDE3B7976BF.dita
author Graeme Price <GRAEME.PRICE@NOKIA.COM>
Fri, 15 Oct 2010 14:32:18 +0100
changeset 15 307f4279f433
permissions -rw-r--r--
Initial contribution of the Adaptation Documentation.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-6752A77F-B1D1-49BE-A672-5DDE3B7976BF" xml:lang="en"><title>Other
Synchronisation APIs</title><shortdesc>This document describes APIs other than the nanokernel which device
drivers use for synchronisation.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>The Kernel provides APIs to wait in blocked state, unblocked state, and
nanokernel APIs to get the tick period, timer ticks, to sleep on nanothread,
and so on. </p>
<codeblock id="GUID-E70B072C-6CE9-572C-BF74-C7F4EE812CBF" xml:space="preserve">// Wait for a length of time specified in nanoseconds
// This is a blocking call, and is not generally recommended
// to be used. It should be used only for very short periods.
//
Kern::NanoWait(TUint32 aInterval);
 
// This API polls at specified regular intervals, for a
// specified number of attempts. A function implementing the polling
// operation is called at these intervals. This does not block the 
// thread. The poll period is in milliseconds.
// 
TInt Kern:: PollingWait(TPollFunction aFunction, TAny *aPtr, 
                TInt aPollPeriodMs, TInt aMaxPoll);
</codeblock>
</conbody></concept>