Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么golang垃圾收集器不实现分代紧凑gc?_Go_Garbage Collection - Fatal编程技术网

为什么golang垃圾收集器不实现分代紧凑gc?

为什么golang垃圾收集器不实现分代紧凑gc?,go,garbage-collection,Go,Garbage Collection,分代和紧凑的gc已经被认为是最佳实践。但戈朗并没有采纳它。谁能告诉我原因?我不是GC专家,但这里有几个链接似乎可以解释设计: 我不是GC专家,但这里有几个链接似乎可以解释设计: 这是golang nuts耐心且富有启发性的回复 这是golang nuts耐心且富有启发性的回复 您是否实施过压缩GC?知道紧凑化有多复杂吗?@Volker我不是gc方面的专家。但很多人和戈朗都是作家。您的意思是,对于golang expert来说,实施起来太难了吗?或者还有其他考虑。是的。太复杂了,不可能正确

分代和紧凑的gc已经被认为是最佳实践。但戈朗并没有采纳它。谁能告诉我原因?

我不是GC专家,但这里有几个链接似乎可以解释设计:


我不是GC专家,但这里有几个链接似乎可以解释设计:


这是golang nuts耐心且富有启发性的回复


这是golang nuts耐心且富有启发性的回复


您是否实施过压缩GC?知道紧凑化有多复杂吗?@Volker我不是gc方面的专家。但很多人和戈朗都是作家。您的意思是,对于golang expert来说,实施起来太难了吗?或者还有其他考虑。是的。太复杂了,不可能正确(正确且延迟低)。不知道为什么你会被否决(我给了你更高的票数);这是一个完全合理的问题。我知道这在过去的某个地方被解释过,但我忘记了细节。Go的GC不是分代的,因为与基于指针的语言相比,分代假设对于Go(它在堆栈上或相邻块中分配了很多资源)不太正确。不确定“压缩”部分。您是否实现过压缩GC?知道紧凑化有多复杂吗?@Volker我不是gc方面的专家。但很多人和戈朗都是作家。您的意思是,对于golang expert来说,实施起来太难了吗?或者还有其他考虑。是的。太复杂了,不可能正确(正确且延迟低)。不知道为什么你会被否决(我给了你更高的票数);这是一个完全合理的问题。我知道这在过去的某个地方被解释过,但我忘记了细节。Go的GC不是分代的,因为与基于指针的语言相比,分代假设对于Go(它在堆栈上或相邻块中分配了很多资源)不太正确。不确定“压缩”部分。谢谢你的回复。谢谢你的回复