You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, the waker registered with a JoinHandle is not dropped until the task allocation is dropped. This means that if two tasks await each other's JoinHandle, then they will form a reference cycle and the task allocation will never be freed.
The JoinHandle waker should be dropped eagerly once the task has completed and the JoinHandle is dropped.
The text was updated successfully, but these errors were encountered:
dropped or the task completes
Currently, the waker registered with a JoinHandle is not dropped until
the task allocation is dropped. This behaviour may cause the memory
allocated by a task to not be freed when in the case of two tasks
awaiting each others JoinHandle.
This commit changes the behaviour by actively dropping the waker when
the JoinHandle gets dropped (or the task completes in some cases).
Closestokio-rs#6505.
tglane
added a commit
to tglane/tokio
that referenced
this issue
Nov 23, 2024
dropped or the task completes
Currently, the waker registered with a JoinHandle is not dropped until
the task allocation is dropped. This behaviour may cause the memory
allocated by a task to not be freed when in the case of two tasks
awaiting each others JoinHandle.
This commit changes the behaviour by actively dropping the waker when
the JoinHandle gets dropped (or the task completes in some cases).
Closestokio-rs#6505.
dropped or the task completes
Currently, the waker registered with a JoinHandle is not dropped until
the task allocation is dropped. This behaviour may cause the memory
allocated by a task to not be freed when in the case of two tasks
awaiting each others JoinHandle.
This commit changes the behaviour by actively dropping the waker when
the JoinHandle gets dropped (or the task completes in some cases).
Closestokio-rs#6505.
Currently, the waker registered with a
JoinHandle
is not dropped until the task allocation is dropped. This means that if two tasks await each other'sJoinHandle
, then they will form a reference cycle and the task allocation will never be freed.The
JoinHandle
waker should be dropped eagerly once the task has completed and theJoinHandle
is dropped.The text was updated successfully, but these errors were encountered: