I posted this in the github issues and don't mean to double post, but if
"...statement...&" is intended only to work for simple commands, e.g.

sleep 10s&; sleep 3s&; sleep 6s&

(silly example, I know!) then I can close the ticket as this may not be a bug
by design. 

What I found was, for functions, e.g.

function q; echo $argv; sleep 10s; echo $argv; end

and execute

q 1 &; q 2 &; q 3 &

the output is

1
1
2
2
3
3
Job 3, “q 3 &” has ended
Job 2, “q 2 &” has ended
Job 1, “q 1 &” has ended

with the observed performance (delay) indicating that each successive "q"
command is not executed until the previous command is completed. I use in POSIX
sh "(sleep [some delay] && [command...]) &" quite commonly in startup scripts
e.g. for window manager autostart scripts to allow for the initialization
requirements of certain apps and windows.

If there is a correct "fish" way of spawning background function processes, my
second question is: is there a way to spawn a block of commands in background
similar to POSIX "(command1 && command2 && command3...) &". I tried "begin;
...statements...; end &" but fish does not like that either (not surprisingly
given the above!) 

Thanks!
Steven 

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Fish-users mailing list
Fish-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fish-users

Reply via email to