background - "stopped" how to kill!
Cameron Simpson
cs at zip.com.au
Fri Jun 6 21:56:12 UTC 2014
On 06Jun2014 13:17, Rick Stevens <ricks at alldigital.com> wrote:
>>As you can see, there's nothing special about this. And yeah, when
>>runs as foo.php & << it shows up in the procTBL as "T" in the status.
>>
>>There are no filedescriptors in the test.
>
>It has at least one descriptor, stdout. You're having it print two
>lines. If you background it, it's going to hang trying to print out to
>stdout.
>
>Try "php foo.php >/dev/null 2>&1 &" to make it write stdout and stderr
>to /dev/null and see if that works.
Normally a background process can write to the tty. IIRC, that might be
tunable. More common is to stop when it reads from the tty. Eg:
% read it &
[1] 71654
[1] + 71654 suspended (tty input) read it
%
That's zsh. Bash does the same thing but looks like this:
% read it&
[1] 72595
[1]+ Stopped(SIGTTIN) read it
%
The other thing to try it strace. Look up the PID of your process. (Suppose it
is 13.) Then:
strace -p 13
The should tell you what system call it was making when it was suspended, and
what file descriptors were involved.
Cheers,
Cameron Simpson <cs at zip.com.au>
It is easier to optimize correct code than to correct optimized code.
- Bill Harlan
More information about the users
mailing list