From: <axl...@us...> - 2008-12-15 01:23:32
|
Revision: 77 http://hgengine.svn.sourceforge.net/hgengine/?rev=77&view=rev Author: axlecrusher Date: 2008-12-15 01:23:28 +0000 (Mon, 15 Dec 2008) Log Message: ----------- update Modified Paths: -------------- Mercury2/src/RenderableNode.cpp Mercury2/src/RenderableNode.h Modified: Mercury2/src/RenderableNode.cpp =================================================================== --- Mercury2/src/RenderableNode.cpp 2008-12-13 17:28:34 UTC (rev 76) +++ Mercury2/src/RenderableNode.cpp 2008-12-15 01:23:28 UTC (rev 77) @@ -22,7 +22,7 @@ void RenderableNode::Update(float dTime) { MSemaphoreIncOnDestroy s( &m_semaphore ); - while (m_semaphore.ReadValue() != 0); + Spinlock(0); } void RenderableNode::Render() @@ -99,7 +99,7 @@ if ( rn = Cast(n) ) { MSemaphoreDecOnDestroy s( &(rn->m_semaphore) ); - while (rn->m_semaphore.ReadValue() != 1); + rn->Spinlock(1); rn->Render(); } Modified: Mercury2/src/RenderableNode.h =================================================================== --- Mercury2/src/RenderableNode.h 2008-12-13 17:28:34 UTC (rev 76) +++ Mercury2/src/RenderableNode.h 2008-12-15 01:23:28 UTC (rev 77) @@ -39,6 +39,7 @@ bool m_hidden; private: bool IsInAssetList(MercuryAsset* asset) const; + inline void Spinlock( unsigned long value ) { while (m_semaphore.ReadValue() != value); } std::list< MAutoPtr< MercuryAsset > > m_assets; ///serves as a holder for memory This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |