本文整理匯總了C#中Server.SaveMetrics.OnMapSaved方法的典型用法代碼示例。如果您正苦於以下問題:C# SaveMetrics.OnMapSaved方法的具體用法?C# SaveMetrics.OnMapSaved怎麽用?C# SaveMetrics.OnMapSaved使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Server.SaveMetrics
的用法示例。
在下文中一共展示了SaveMetrics.OnMapSaved方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: SaveMaps
protected void SaveMaps( SaveMetrics metrics )
{
Dictionary<Serial, BaseInstanceMap> maps = World.Maps;
GenericWriter idx;
GenericWriter tdb;
GenericWriter bin;
if (UseSequentialWriters)
{
idx = new BinaryFileWriter( World.MapIndexPath, false );
tdb = new BinaryFileWriter( World.MapTypesPath, false );
bin = new BinaryFileWriter( World.MapDataPath, true );
}
else
{
idx = new AsyncWriter( World.MapIndexPath, false );
tdb = new AsyncWriter( World.MapTypesPath, false );
bin = new AsyncWriter( World.MapDataPath, true );
}
idx.Write( ( int ) maps.Count );
foreach ( BaseInstanceMap map in maps.Values )
{
if ( map.Decays )
_decayMapQueue.Enqueue( map );
long start = bin.Position;
idx.Write( ( int ) map.TypeReference );
idx.Write( ( int ) map.Serial );
idx.Write( ( long ) start );
map.Serialize( bin );
if ( metrics != null )
metrics.OnMapSaved( ( int ) ( bin.Position - start ) );
idx.Write( ( int ) ( bin.Position - start ) );
}
tdb.Write( ( int ) World.m_InstanceMapTypes.Count );
for ( int i = 0; i < World.m_InstanceMapTypes.Count; ++i )
tdb.Write( World.m_InstanceMapTypes[i].FullName );
idx.Close();
tdb.Close();
bin.Close();
}