In reply to dave_59:
In reply to RB87:
There is no difference between
forever begin
fork
statement_1;
join_none
fork
statement_2;
join_none
end
and
forever begin
fork
statement_1;
statement_2;
join_none
end
or
forever
fork
statement_1;
statement_2;
join_none
Can only guess this was from cut&paste.
BTW, it makes no sense to have a function call, or any other non-time consuming statement as a fork’ed process.
Hi Dave,
Correct me, if I am wrong.
I feel in the first snippet of code, function_1 will always starts first and then, function_2 concurrently. But in case of snippet 2 and snippet 3 either of the function can start first based on the simulator.
In other words, in snippet 1 there won’t be any race condition, but snippet 2 and 3 will have race condition.