Alan M. Carroll created TS-4265:
-----------------------------------

             Summary: Repurpose EThread::schedule_spawn to actually schedule at 
thread spawn
                 Key: TS-4265
                 URL: https://issues.apache.org/jira/browse/TS-4265
             Project: Traffic Server
          Issue Type: Improvement
          Components: Core
            Reporter: Alan M. Carroll


As far as I can tell, {{EThread::schedule_spawn}} is is not used and is just a 
crippled version of {{EThread::schedule_imm}}  without the optional arguments.

It would be better to make this call provide a mechanism to schedule 
continuations that are called when a thread is spawned. This enable a lot of 
cleanup of some very ugly thread initialization logic while at the same time 
avoiding potential ugly race conditions. For instance {{NetHandler}} is 
initialized in each thread *after* the thread is already running but before 
(hopefully) any I/O events arrive. It would be much cleaner to do that in a 
thread spawn event. Further this would decouple some initialization logic and 
thread logic (as in this case) - the initalization logic would no longer need 
to know anything about thread start up other than {{EThread::schedule_spawn}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to