-
Russ Cox authored
The list elements are already being allocated out of a single memory buffer. We can drop the Link* pointer following and the memory it requires, replacing it with index operations. The change also keeps a channel from containing a pointer back into its own allocation block, which would create a cycle. Blocks involved in cycles are not guaranteed to be finalized properly, and channels depend on finalizers to free OS-level locks on some systems. The self-reference was keeping channels from being garbage collected. runtime-gdb.py will need to be updated in order to dump the content of buffered channels with the new data structure. Fixes #1676. R=ken2, r CC=golang-dev https://golang.org/cl/4411045
507df959
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
cmd | ||
lib9 | ||
libbio | ||
libmach | ||
pkg | ||
Make.ccmd | ||
Make.clib | ||
Make.cmd | ||
Make.common | ||
Make.inc | ||
Make.pkg | ||
all-qemu.bash | ||
all.bash | ||
clean.bash | ||
env.bash | ||
make.bash | ||
quietgcc.bash | ||
run.bash | ||
sudo.bash | ||
version.bash |