AnvilStats: made FastNBT faster by tweaking the pre-allocation.
Although the file is shared between AnvilStats and MCServer, MCServer doesn't use this tweak (it uses too much memory) git-svn-id: http://mc-server.googlecode.com/svn/trunk@931 0a769ca7-a7f5-676a-18bf-c427514a06d6master
parent
75a1bd8a37
commit
c26a593228
|
@ -356,6 +356,30 @@
|
|||
<File
|
||||
RelativePath="..\source\WorldStorage\FastNBT.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions="NBT_RESERVE_SIZE=10000"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions="NBT_RESERVE_SIZE=10000"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release profiled|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions="NBT_RESERVE_SIZE=10000"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\source\WorldStorage\FastNBT.h"
|
||||
|
|
|
@ -10,6 +10,12 @@
|
|||
|
||||
|
||||
|
||||
// The number of NBT tags that are reserved when an NBT parsing is started.
|
||||
// You can override this by using a cmdline define
|
||||
#ifndef NBT_RESERVE_SIZE
|
||||
#define NBT_RESERVE_SIZE 200
|
||||
#endif // NBT_RESERVE_SIZE
|
||||
|
||||
#define RETURN_FALSE_IF_FALSE(X) do { if (!X) return false; } while (0)
|
||||
|
||||
|
||||
|
@ -54,7 +60,7 @@ bool cParsedNBT::Parse(void)
|
|||
return false;
|
||||
}
|
||||
|
||||
m_Tags.reserve(200);
|
||||
m_Tags.reserve(NBT_RESERVE_SIZE);
|
||||
|
||||
m_Tags.push_back(cFastNBTTag(TAG_Compound, -1));
|
||||
|
||||
|
|
Loading…
Reference in New Issue