For loop and fork join in verilog

In reply to goodice:

First of all, it doesn’t make sense to discuss fork/join without some time consuming constructs like delays or event controls. Otherwise it behaves the same as begin/end.

But I think the SystemVerilog case, you meant to write fork/join_none. Otherwise each iteration of the for loop must execute serially. When you switch to fork/join_none, that’s when the automatic lifetime is needed.

I think you need to ask a separate question about blocking assignment and show some code.