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
|
<File
|
||||||
RelativePath="..\source\WorldStorage\FastNBT.cpp"
|
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>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\source\WorldStorage\FastNBT.h"
|
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)
|
#define RETURN_FALSE_IF_FALSE(X) do { if (!X) return false; } while (0)
|
||||||
|
|
||||||
|
|
||||||
|
@ -54,7 +60,7 @@ bool cParsedNBT::Parse(void)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_Tags.reserve(200);
|
m_Tags.reserve(NBT_RESERVE_SIZE);
|
||||||
|
|
||||||
m_Tags.push_back(cFastNBTTag(TAG_Compound, -1));
|
m_Tags.push_back(cFastNBTTag(TAG_Compound, -1));
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue