YoshikuniJujo on Nostr: ...
2つのByteStringをappendすると、その両者のサイズを足したサイズの領域が確保され、そこにコピーされる。でそこからsplitAtで何バイトか取り出した場合、実際にはメモリ領域はそのままでポインタだけ新さに用意される。
それをくりかえすうちに、ひとつの大きなByteStringが出来上がり、そしてその一部でも使っているかぎりGCはされないという悪夢が生じる。
そういう話って、あんまりみんなしてないと思うのだけど、みんなはじめから、「当たり前」って思ってるのかな。
Published at
2025-06-01 22:44:09Event JSON
{
"id": "249f7276c61bfde2d9f6598a2c6e01bf26d4386c16382a2788d783b910748e67",
"pubkey": "ef89ee45550f7377284d31e49fc57e5732ffc2b95a7bf35d0f1291d6fa278758",
"created_at": 1748817849,
"kind": 1,
"tags": [
[
"content-warning",
"「当たり前」なのかもしれないので"
]
],
"content": "2つのByteStringをappendすると、その両者のサイズを足したサイズの領域が確保され、そこにコピーされる。でそこからsplitAtで何バイトか取り出した場合、実際にはメモリ領域はそのままでポインタだけ新さに用意される。\nそれをくりかえすうちに、ひとつの大きなByteStringが出来上がり、そしてその一部でも使っているかぎりGCはされないという悪夢が生じる。\nそういう話って、あんまりみんなしてないと思うのだけど、みんなはじめから、「当たり前」って思ってるのかな。",
"sig": "eb45e50e9e84bcf6fd284af2235e25c39b3beb34464c733ccb58352b560cb7a01c14c1dc13b244f3ce288138815805f4cfe442009b84aa114c07292c6d4caea4"
}