QA@IT
«回答へ戻る

提示され(ば)=>た に修正

545
 Rubyに限った話ではないと思うのですが、
 ブロック内で作成されたインスタンスならブロックを抜けた時点で不要なインスタンスと
-分かるのですが、提示されば場所はグローバルな場所で閉じられたブロック内ではない為
+分かるのですが、提示された場所はグローバルな場所で閉じられたブロック内ではない為
 一番息の長いところにインスタンスが出来てしまっているのでGCは不要なインスタンスであることを
 知ることは出来ません。インスタンスを作ってそれが代入されていないからといって必要ないとは限らないからです。例えばclass Barの中でnew後何らかの処理が別スレッドで実行されているような作りであった場合、GCがインスタンスを片付けてしまっては大変なことになります。

Rubyに限った話ではないと思うのですが、
ブロック内で作成されたインスタンスならブロックを抜けた時点で不要なインスタンスと
分かるのですが、提示された場所はグローバルな場所で閉じられたブロック内ではない為
一番息の長いところにインスタンスが出来てしまっているのでGCは不要なインスタンスであることを
知ることは出来ません。インスタンスを作ってそれが代入されていないからといって必要ないとは限らないからです。例えばclass Barの中でnew後何らかの処理が別スレッドで実行されているような作りであった場合、GCがインスタンスを片付けてしまっては大変なことになります。

Rubyに限った話ではないと思うのですが、
ブロック内で作成されたインスタンスならブロックを抜けた時点で不要なインスタンスと
分かるのですが、提示された場所はグローバルな場所で閉じられたブロック内ではない為
一番息の長いところにインスタンスが出来てしまっているのでGCは不要なインスタンスであることを
知ることは出来ません。インスタンスを作ってそれが代入されていないからといって必要ないとは限らないからです。例えばclass Barの中でnew後何らかの処理が別スレッドで実行されているような作りであった場合、GCがインスタンスを片付けてしまっては大変なことになります。

回答を投稿

Rubyに限った話ではないと思うのですが、
ブロック内で作成されたインスタンスならブロックを抜けた時点で不要なインスタンスと
分かるのですが、提示されば場所はグローバルな場所で閉じられたブロック内ではない為
一番息の長いところにインスタンスが出来てしまっているのでGCは不要なインスタンスであることを
知ることは出来ません。インスタンスを作ってそれが代入されていないからといって必要ないとは限らないからです。例えばclass Barの中でnew後何らかの処理が別スレッドで実行されているような作りであった場合、GCがインスタンスを片付けてしまっては大変なことになります。

Rubyに限った話ではないと思うのですが、
ブロック内で作成されたインスタンスならブロックを抜けた時点で不要なインスタンスと
分かるのですが、提示されば場所はグローバルな場所で閉じられたブロック内ではない為
一番息の長いところにインスタンスが出来てしまっているのでGCは不要なインスタンスであることを
知ることは出来ません。インスタンスを作ってそれが代入されていないからといって必要ないとは限らないからです。例えばclass Barの中でnew後何らかの処理が別スレッドで実行されているような作りであった場合、GCがインスタンスを片付けてしまっては大変なことになります。