Skywind wrote:
> >> 'close_cb' and 'exit_cb' will not be invoked if I stop the job by
> >> job_stop(s:job_obj, 'int') in windows.
>
> > This is because on Windows we don't know the effect of sending 'int'.
> > It basically sends a CTRL-C key. The process may do nothing with it.
>
> thanks for reply, but in windows child process has already been stopped by
> 'int' signal,
> but the following 'close_cb' or 'exit_cb' has never been invocated.
>
> Seems vim doesn't know the child process has already been exited in windows
> and still "looking for messages on channels"
>
> here is my channel log:
>
> ==== start log session ====
> 16.528877 : Starting job: cmd.exe /C d:\acm\github\vim\tools\win32/vimmake.6
> 16.529539 on 0: Created channel
> 16.597577 : looking for messages on channels
> 16.800522 RECV on 0: '[0]: stdout
> '
> 16.800562 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 16.925442 : looking for messages on channels
> 17.748489 RECV on 0: '[1]: stderr
> '
> 17.748529 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 17.793600 : looking for messages on channels
> 18.727212 RECV on 0: '[2]: stdout
> '
> 18.727251 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 18.753327 : looking for messages on channels
> 19.745455 RECV on 0: '[3]: stderr
> '
> 19.745493 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 19.781825 : looking for messages on channels
> 20.753949 RECV on 0: '[4]: stdout
> '
> 20.753980 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 20.818269 : looking for messages on channels
> 21.751584 RECV on 0: '[5]: stderr
> '
> 21.751617 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 21.865572 : looking for messages on channels
> 22.731953 RECV on 0: '[6]: stdout
> '
> 22.732024 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 22.850624 : looking for messages on channels
> 23.772697 RECV on 0: '[7]: stderr
> '
> 23.772735 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 23.889643 : looking for messages on channels
> 24.785400 RECV on 0: '[8]: stdout
> '
> 24.785437 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 24.851843 : looking for messages on channels
> 25.058043 on 0: Stopping job with 'int'
> 25.078212 RECV on 0: 'Traceback (most recent call last):
> File "d:\acm\github\vim\tools\test.py", line 11, in <module>
> time.sleep(1)
> KeyboardInterrupt
> '
> 25.078232 : looking for messages on channels
> 25.078273 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 25.089159 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 25.099039 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 25.104338 on 0: Invoking channel callback g:Vimmake_Build_OnCallback
> 25.211838 RECV on 0: 'Terminate batch job (Y/N)? '
> 25.211873 : looking for messages on channels
>
> ------------
> that's all of the channel log, cannot find any 'close_cb' and 'exit_cb' in 10
> minutes after job stopped.
Isn't that because the process is hanging in that Y/N prompt? How do
you know the process finished and exited?
--
Westheimer's Discovery:
A couple of months in the laboratory can
frequently save a couple of hours in the library.
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.