好吧,对于这个项目,我使用的语言是PhP。
我正在创建一个高级缓存系统来节省程序中的CPU周期。通过对块进行一次编码,可以保存许多CPU周期,结果将是更快的服务器。
if(!isset($this->chunkCache[$index])){
$pk = new BatchPacket();
$pk->payload = $payload;
$pk->encode();
$pk->isEncoded = true;
$this->chunkCache[$index] = $pk;
file_put_contents("cache/" . $this->getName() . "/" . $x . "_" . $z . ".dat", $pk);
}
所以这里的目标是对一个块进行编码,将其保存到RAM中(因此可以被其他玩家使用)然后创建一个保存数据包的.dat文件,以便将来我可以跳过编码部分。
现在我的问题是生成的文件是空的。我不知道为什么。我需要的是包含$ pk数据包的文件。应该是这样的东西:
["isEncoded"]=>
bool(true)
["channel"]=>
int(0)
["offset"]=>
int(0)
["buffer"]=>
任何想法都会受到赞赏。