|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
小弟前两天参加了晶晨科技秋招笔试,有个SV语法的笔试题一直没搞明白。
现在有定义好的三个子线程do1,do2,do3,在task中并行运行这三个子线程,其中只要有任何一个线程结束,都退出并行运行块,并打印DONE。要求分别用fork-join、fork-join_any,fork-join_none来实现。
我只知道用fork-join_any,如何用其他两个来实现,实在是想不到。故在此提问,望各位前辈不吝赐教!
试着用fork-Join写了一下,不知是否正确。
- task test;
- bit ok1='b0,ok2='b0,ok3='b0;
- fork
- begin
- do1();
- ok1='b1;
- end
- begin
- do2();
- ok3='b1;
- end
- begin
- do3();
- ok3='b1;
- end
- join
- if(ok1|ok2|ok3) disable fork;
复制代码
|
|