|
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.
|