Thank you for your reply. I tested redispatch the handle, it's indeed safe, but always got error:
2018-01-23 09:10:02.271 DEBUG [7756] [uv_proc_master::send_handle@249] client dispatch: -858993460, handle: 3725640 2018-01-23 09:10:02.272 ERROR [7756] [uv_proc_master::send_handle@258] uv_write2 failed! code: -4049 it looks like the tcp stream handle is not valid now in master process after i killed the child process. Maybe the child process give some uv_start_read and the connection event handler become unpredictable, so i can't redispatch it again in master process? 在 2018年1月23日星期二 UTC+8上午12:58:05,Ben Noordhuis写道: > > On Mon, Jan 22, 2018 at 10:57 AM, luke <[email protected] <javascript:>> > wrote: > > Hi~ > > > > > > After i dispatch a tcp stream handle to a child process, can i > redispatch it > > again if the child process crashed or killed? > > > > and i mean recreate another child process then dispatch the old handle > to > > it. The child process only handle io operations. > > > > I made some test, and found the tcp connection is not closed if the > child > > process killed, so i wonder if i can redispatch it. > > > > > > > > Thanks. > > It should be safe when your callback to uv_write2() is called with an > error code. > -- You received this message because you are subscribed to the Google Groups "libuv" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/libuv. For more options, visit https://groups.google.com/d/optout.
