From 878bf3fde7b4ed66be0302ffdd5e704b4cd70a6c Mon Sep 17 00:00:00 2001 From: Anuraag Agrawal Date: Thu, 6 Jun 2024 13:21:02 +0900 Subject: [PATCH] Cleanup --- src/runtime/mfinal.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/runtime/mfinal.go b/src/runtime/mfinal.go index 1c585cfb0c..78313fb74c 100644 --- a/src/runtime/mfinal.go +++ b/src/runtime/mfinal.go @@ -377,10 +377,11 @@ func blockUntilEmptyFinalizerQueue(timeout int64) bool { // In order to use finalizers correctly, the program must ensure that // the object is reachable until it is no longer required. // Objects stored in global variables, or that can be found by tracing -// pointers from a global variable, are reachable. For other objects, -// including receivers, pass the object to a call of the [KeepAlive] -// function to mark the last point in the function where the object must -// be reachable. +// pointers from a global variable, are reachable. A function argument or +// receiver may become unreachable at the last point where the function +// mentions it. To make an unreachable object reachable, pass the object +// to a call of the [KeepAlive] function to mark the last point in the +// function where the object must be reachable. // // For example, if p points to a struct, such as os.File, that contains // a file descriptor d, and p has a finalizer that closes that file