Thread Group Misses
PROGRAMMING TASK
Description of Task
threadedWorkLoop
and threadedRecoverLogicalData
break the convention of threaded
method starting with the addition of a thread group and a call of defer done.
err = tg.Add()
if err != nil {
return err
}
defer tg.Done()
Reason or Need for Change
threadedWorkLoop
is a method of the worker
and threadedRecoverLogicalData
is a method of the unfinishedDownloadChunk
. Currently neither have its own thread group which is why these threaded functions break convention. While there are no currently known issues that this is causing, this could lead to further issues with ungraceful shutdowns.
Design / Proposal
TBD