In reply to juhi_p:
Due to wait fork each Iteration of for loop completes before the next Iteration Starts .
SO for 1st Iteration for j == 0 , wait_fork would block the for loop till the
immediate child thread completes . Hence we get the display with j == 0 i.e Thread=0
The 2nd Iteration of for loop ( i.e j == 1 ) starts after the 1st display statement executes.
**So essentially combination of join_none and wait fork gives a fork join behavior
**