前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >disable fork,你真的会用吗?

disable fork,你真的会用吗?

作者头像
IC验证
发布于 2020-06-30 03:37:37
发布于 2020-06-30 03:37:37
3.7K0
举报
文章被收录于专栏:杰瑞IC验证杰瑞IC验证

来源| 杰瑞IC验证(ID:Jerry_IC) |原创作者| Q哥

前面几篇文章给大家讲解了如何使用fork创建多进程。SystemVerilog允许大家在使用fork + join/join_any/join_none创建进程之后,通过disable fork来提前结束这些进程。

例如下面的代码片段1,fork + join_any产生了两个并行的子进程:

第一个子进程等待valid信号,然后打印第12行的信息;

第二个子进程等待max_delay个ns,然后打印第16行的信息。

不论是哪一种结果,都会导致join_any跳出fork,接着执行disable fork来结束这个fork进程及其子进程。

代码片段1

这个task在等待valid的同时,为了避免长时间等待,加了一个超时机制。不论是等到valid,还是超时了,都不必再等待另一个子进程继续执行下去。这段代码乍一看好像没什么问题啊?

别急,继续往下看。

假如还有另一个task B,需要在启动task A之前启动,常见的做法就是先fork + join_none的方式启动B,再启动A。

如下面代码片段2所示。

代码片段2

执行task C,会惊奇的发现:不论task A里面是否wait valid成功,当执行后面的disable fork之后,task B始终都没有打印第27行的信息?

为什么会这样?是不是开始怀疑人生了?

别急,这是因为当disable fork的时候,不仅杀掉了task A里面的fork进程,连task C里面的fork/join_none进程也杀死了。disable的杀伤力,远远超出了想象,有没有?

不是我不小心,只是……

要避免这样的误杀,办法其实很多。最常见的做法是添加所谓的guard fork,来限制disable fork的作用范围。

如下面的代码片段3所示:

代码片段3

还有一种不太好做法是给fork的进程添加别名,然后disable这个指定的进程,如下面的代码片段4所示:

代码片段4

这种做法看似也OK,但是会引入另外一种风险。思考一下,不知道你是否猜到了?

Q哥带你揭晓答案。

如下面所示的代码片段5,task D里面通过fork join同时启动了两个调用task A的子进程并行执行。当调用A(1000)执行到disable p1的时候,会惊奇地发现,A(2000)也被意外地终结了。

代码片段5

给fork进程命名,弄巧成拙了。推荐大家还是使用guard fork,这是一种良好的coding style。

——The End——

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 杰瑞IC验证 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
怎样找回删除的照片?照片恢复完整教程
不小心删除了重要的照片会让人头疼,幸运的是,很多时候我可以进行照片恢复。今天会给大家讨论一下删除照片恢复的概率,并且提供几个有效的照片恢复方法,帮助大家应对照片丢失问题。
用户7704932
2024/08/09
4490
怎样找回删除的照片?照片恢复完整教程
回收站删除的文件怎么恢复?实用技巧大揭秘
在电子设备高度普及的今天,我们经常在电脑上执行各种操作,例如,操作大量的数据,包含创建文件、修改文件、删除文件、传输文件等。这些数据涉及到我们工作、生活和学习的方方面面。数据对我们来说是非常重要的资源,然而,有时候,我们可能在不经意将删除了重要的文件或是清空了回收站,造成数据丢失。那么回收站删除的文件怎么恢复呢?有些实用的技巧可以帮我们找回丢失的文件,下面我们一起学习一下吧。
用户7704932
2023/11/02
2670
回收站删除的文件怎么恢复?实用技巧大揭秘
回收站删除的文件怎么恢复?推荐这十款数据恢复软件!
我们平时在使用电脑的时候,经常会遇到误删重要文件的情况,这些被删除的文件恢复被系统临时放入回收站,方便我们随时还原。但是,如果这些文件从回收站再次删除怎么办?今天小编介绍十款功能强大的数据恢复软件,并分别介绍如何使用这些恢复软件恢复已经从回收站删除的文件。
用户7704932
2024/01/29
5140
删除的文件怎么找回?删除文件恢复全面指南
我们常常在日常生活或工作中不小心删除了重要文件,这样的情况可能瞬间让人感到无助。不过,数据恢复技术已相当成熟,我们可以通过多种方法来找回误删的文件。下面我们将从简单到复杂逐步讲解找回删除文件的方法,希望可以帮助大家在意外发生时及时找回丢失的文件。
用户7704932
2024/11/04
8160
删除的文件怎么找回?删除文件恢复全面指南
如何恢复删除的照片?(三个照片恢复方法)
现代社会,照片已经成为人们记录生活的重要方式之一,手机和电脑中存储了很多珍贵的照片。但是,由于误删除或其他原因,我们有时候会丢失珍贵的照片文件,这对我们来说会是很大的遗憾。好消息是,随着技术的发展,照片恢复不再是难题,普通用户也能够自己完成照片恢复操作。本文给大家介绍简单易用的方法,帮你轻松恢复删除的照片。
用户7704932
2023/10/31
6980
如何恢复删除的照片?(三个照片恢复方法)
删除的文件还能回来吗?当然可以!教你如何恢复
当不小心按下删除键,或是经过一番清理后发现重要文件不见了,那种慌乱和焦虑的感觉相信大家都有体会过。不过,好消息是,删除的文件并不一定真的“永远消失”了。实际上,有很多方法可以帮助我们找回误删的文件。接下来,让我们一起来看看具体怎么操作吧!
用户7704932
2024/07/22
4350
删除的文件还能回来吗?当然可以!教你如何恢复
删除的视频怎样才能恢复?详尽指南
在日常生活中,我们有时会不小心删除一些重要的视频文件,或者在整理存储空间时不慎丢失了珍贵的记忆片段。这时候,我们可以通过一些数据恢复工具和技巧,找回这些被删除的视频。本文将详细介绍几种常见且有效的视频恢复方法,帮助您找回那些宝贵的影像记录。
用户7704932
2024/07/25
3510
删除的视频怎样才能恢复?详尽指南
硬盘数据恢复:恢复硬盘数据的9个实用方法(Windows版)
无论是工作文档、家庭照片,还是其他珍贵的数字资产,数据丢失总是一件让人头疼的事情。然而,当硬盘发生问题时,不必过于慌张——只要正确应对,许多数据都可以被成功恢复。本文将从常见数据丢失原因到具体恢复方法,为您提供全面的硬盘数据恢复指导。
用户7704932
2024/12/03
4190
硬盘数据恢复:恢复硬盘数据的9个实用方法(Windows版)
笔记本电脑数据丢失如何恢复?
在计算机网络日益普及的今天,计算机已波及到人们的生活、工作、学习及消费等广泛领域,其服务和管理也涉及政府、工商、金融及用户等诸多方面。笔记本电脑等电子产品被各行各业的人所喜爱和接受,早已成为人们出差的必备品,可以用来存放学习资料、公司数据、照片、邮箱、电影等数据,在日常生活和工作中起到很大作用。不过,数据丢失的情况时有发生,比如,硬件故障、误操作、系统故障等都可能导致数据丢失。本文将介绍笔记本电脑数据丢失的常见原因、数据恢复原理以及具体的数据恢复步骤,希望可以帮助大家在丢失数据时及时挽救宝贵的资料。
用户7704932
2024/07/10
1940
笔记本电脑数据丢失如何恢复?
电脑回收站删除的文件还能找回吗 电脑回收站删除的文件怎么恢复
电脑回收站是保护电脑文件和数据的重要屏障,被删除的文件数据在这里会被保存很久,直到被用户永久删除。为了保证电脑系统的流畅运行,我们会对电脑回收站进行清理。在一系列的操作过后,我们可能会发现自己误删了重要文件。那么电脑回收站删除的文件还能找回吗,电脑回收站删除的文件怎么恢复?今天作者就和大家讨论一下这两个问题。
用户9208731
2023/04/18
2.4K0
电脑回收站删除的文件还能找回吗 电脑回收站删除的文件怎么恢复
如何恢复删除的文件?五个步骤搞定文件恢复
在数字洪流汇聚的今日,我们的信息大多以电子的形态保存。这些电子文件,无论是职场上的重要文书,还是个人生活中的照片与视频,一旦消失,就可能带来无法弥补的遗憾。所幸的是,随着科技的马不停蹄,很多时候,这些被抹去的文件仍能重回我们的怀抱。本文将为你揭开文件恢复的五个神秘步骤。
用户7704932
2024/02/04
4670
如何恢复删除的文件?五个步骤搞定文件恢复
如何恢复硬盘删除的数据?10个简单实用方法详解
在日常使用电脑的过程中,我们可能会不小心删除一些重要的文件,或者在清理硬盘空间时误删一些需要保留的数据。这时,了解如何恢复硬盘删除的数据就显得尤为重要。本文将为你介绍硬盘删除文件的恢复原理、告诉你哪些情况下文件恢复的可能性较低、详细介绍十个硬盘数据恢复方法。同时,我们还将解答一些常见的关于数据恢复的疑问。
用户7704932
2024/05/16
4570
如何恢复硬盘删除的数据?10个简单实用方法详解
移动硬盘文件丢失怎么找回来?3个常用方法总结
随着移动硬盘的普及,移动硬盘文件丢失的问题也越发频繁。移动硬盘文件丢失怎么找回来?本文将从移动硬盘数据存储和删除的机制出发,用浅显易懂的语言,为大家详细介绍移动硬盘数据的恢复方法。话不多说,一起来看看吧!
一个专注于数据的号
2025/06/11
560
移动硬盘数据恢复 详细操作指南 (6种方法)
移动硬盘是我们平时经常使用的数据存储设备之一,移动硬盘容量大、便携、使用方便,很多用户都喜欢使用移动硬盘作为辅助存储设备。但是,我们平时移动硬盘的时候也会遇到数据丢失问题,不论是由于误删除、格式化、还是硬盘打不开,数据丢失都会给我们带来不小的困扰。好消息是,很多情况下,移动硬盘丢失的数据是可以恢复的。本文将给大家详细介绍移动硬盘数据恢复的完整过程,帮助大家有效应对数据丢失问题。
用户7704932
2024/08/30
3330
移动硬盘数据恢复 详细操作指南 (6种方法)
EasyRecovery高恢复率的免费恢复软件
在计算机应用过程中,甩户有时舍碰到机器系统意外崩溃、格式化磁盘,或者把放入回收站中的文件不小心清空的情况.结果发现有些重要的数据忘记备份.有没有方法重新找回这些已被“彻底删除”的文件呢?该文通过分析得
用户7442547
2022/08/23
1.3K0
恢复删除的文件:掌握这些技巧,轻松找回丢失的数据
现代社会中,数据的重要性不言而喻,随着科技的不断发展,我们的工作、生活和学习都越来越依赖电子设备。然而,高度数字化的时代,文件丢失问题时有发生。意外删除、格式化、系统崩溃等都可能导致重要文件丢失,给我们带来许多烦恼和损失。这种情况下,如果能掌握文件恢复方法,将可以及时挽救损失,保护数据安全。
用户7704932
2024/01/02
2530
恢复删除的文件:掌握这些技巧,轻松找回丢失的数据
数据恢复软件EasyRecovery15下载
要想恢复文件,就得整明白一件事:文件在删除后去哪儿了呢?首先需要明确一件事情:文件被我们删除到回收站后,本质上只是进行了移动,因为我们随时可以从回收站还原文件。
用户7442547
2022/06/30
6210
EasyRecovery2023恢复能力强效率高的软件
EasyRecovery具有磁盘诊断、数据恢复、文件修复等特点的硬盘数据恢复工具,E-mail修复等功能。使用了EasyRecovery,您可以将数据库、电子表格、Word文档,Zip文件很容易找到。打开EasyRecovery软件完成后,您需要选择文件的原始存储位置,然后开始快速或深度扫描文件。扫描完成后,您可以看到分类清晰的文件类型。您可以很容易地找到要恢复的文件,然后单击“下一个”保存和恢复文件,容易理解的文件管理器和经典的文件保存对话框,按照指南可以快速完成操作。EasyRecovery是一款比较经典的老牌的电脑数据恢复工具,EasyRecovery拥有数据恢复、磁盘诊断、克隆磁盘、E-mail修复等多种功能。并且EasyRecovery的恢复能力强,效率高,除了电脑数据恢复之外,其他能连接到电脑上的移动存储设备的数据也可以通过EasyRecovery恢复。作为专业的数据恢复软件,EasyRecovery易恢复可以一键快速恢复丢失的数据。
用户7442547
2022/12/05
4010
如何轻松实现电脑数据恢复?(四种方法)
电脑已经成为我们平时工作、生活或是学习中的重要工具,电脑中存有我们的数据,比如,照片、工作文件档、学习资料等。这些数据有时候会因各种原因丢失,如误删除、硬件故障、格式化、文件系统损坏等。数据的重要性不言而喻,所以,数据恢复是一项很实用的技巧。本文将讨论一些常用的电脑数据恢复方法,帮你应对潜在的数据丢失风险。
用户7704932
2023/12/08
3650
如何轻松实现电脑数据恢复?(四种方法)
硬盘数据丢失能恢复吗 硬盘数据丢失怎么找回
硬盘是电脑的核心设备,被用来安装软件,储存数据,运行系统。在使用过程中,我们会遇到硬盘数据丢失的情况。今天小编给大家介绍一下,硬盘数据丢失能恢复吗,硬盘数据丢失怎么找回。
用户9208731
2023/03/29
2.9K0
硬盘数据丢失能恢复吗 硬盘数据丢失怎么找回
推荐阅读
相关推荐
怎样找回删除的照片?照片恢复完整教程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档