/// <summary> /// Queues up a build item /// </summary> /// <param name="buildItem">Build item to queue</param> public static void QueueWork( TerrainPatchBuildItem buildItem ) { Interlocked.Increment( ref s_PendingBuildItems ); //delegate // { // buildItem.StartBuild( ); // s_Marshaller.PostAction( buildItem.FinishBuild ); // Interlocked.Decrement( ref s_PendingBuildItems ); // } ExtendedThreadPool.Instance.Enqueue( buildItem, null ); }
/// <summary> /// Returns a build item to the internal pool /// </summary> public static void Deallocate( TerrainPatchBuildItem buildItem ) { s_BuildItems.Add( buildItem ); }