标签: process

等到过程结束

我有一个应用程序

Process.Start()
Run Code Online (Sandbox Code Playgroud)

启动另一个应用程序'ABC'.我想等到应用程序结束(进程死机)并继续执行.我该怎么做?

应用程序"ABC"可能有多个实例同时运行.

.net c# process

194
推荐指数
6
解决办法
22万
查看次数

fork(),vfork(),exec()和clone()之间的区别

我希望在Google上找到这四者之间的差异,我希望有关于此的大量信息,但四个电话之间确实没有任何可靠的比较.

我开始尝试编译一种基本的一目了然的看看这些系统调用之间的差异,这就是我得到的.所有这些信息是否正确/我错过了什么重要的事情?

Fork :fork调用基本上复制了当前进程,几乎在所有方面都是相同的(并非所有内容都被复制,例如,某些实现中的资源限制,但想法是尽可能创建尽可能接近的副本).

新进程(子进程)获取不同的进程ID(PID),并将旧进程(父进程)的PID作为其父PID(PPID).因为这两个进程现在运行的代码完全相同,所以它们可以通过fork的返回代码告诉哪个进程 - 子进程为0,父进程获取子进程的PID.当然,这就是假设fork调用有效 - 如果没有,则不创建子节点并且父节点获取错误代码.

Vfork:vfork和fork之间的基本区别在于,当使用vfork()创建新进程时,父进程将暂时挂起,子进程可能会借用父进程的地址空间.这种奇怪的状态一直持续到子进程退出或调用execve(),此时父进程继续.

这意味着vfork()的子进程必须小心,以避免意外修改父进程的变量.特别是,子进程不能从包含vfork()调用的函数返回,并且它不能调用exit()(如果需要退出,它应该使用_exit();实际上,对于子进程也是如此正常的fork()).

Exec :exec调用是一种基本上用新程序替换整个当前进程的方法.它将程序加载到当前进程空间并从入口点运行它.exec()用函数指向的可执行文件替换当前进程.除非存在exec()错误,否则控件永远不会返回到原始程序.

Clone :克隆,作为fork,创建一个新进程.与fork不同,这些调用允许子进程与调用进程共享其执行上下文的一部分,例如内存空间,文件描述符表和信号处理程序表.

使用clone创建子进程时,它将执行函数应用程序fn(arg).(这与fork不同,fork从原始fork调用开始继续执行.)fn参数是指向子进程在执行开始时调用的函数的指针.arg参数传递给fn函数.

当fn(arg)函数应用程序返回时,子进程终止.fn返回的整数是子进程的退出代码.子进程也可以通过调用exit(2)或在收到致命信号后明确终止.

获得的信息形式:

感谢您抽时间阅读 !:)

linux fork clone process exec

190
推荐指数
4
解决办法
14万
查看次数

了解PrimeFaces进程/更新和JSF f:ajax执行/呈现属性

究竟是什么process,并update在PrimeFaces p:commandXxx组件和executerenderf:ajax标签?

哪个在验证时有效?什么是update属性做,而不是更新的值从后端组件?不要process属性绑定值模型?究竟是什么@this,@parent,@all@form在这两个属性?

下面的例子工作正常,但我对基本概念有点困惑.

<p:commandButton process="@parent"
                 update="@form"
                 action="#{bean.submit}" 
                 value="Submit" />
Run Code Online (Sandbox Code Playgroud)

jsf process updates primefaces

181
推荐指数
4
解决办法
22万
查看次数

快速而又脏的方法,确保一次只运行一个shell脚本实例

确保在给定时间只运行一个shell脚本实例的快速而简单的方法是什么?

bash shell lockfile process

174
推荐指数
16
解决办法
10万
查看次数

如何从Java中的String修剪文件扩展名?

在Java中修剪后缀的最有效方法是什么,如下所示:

title part1.txt
title part2.html
=>
title part1
title part2
Run Code Online (Sandbox Code Playgroud)

java string process

171
推荐指数
10
解决办法
19万
查看次数

如何检查进程ID(PID)是否存在

在bash脚本中,我想执行以下操作(在伪代码中):

if [ a process exists with $PID ]; then

    kill $PID 

fi
Run Code Online (Sandbox Code Playgroud)

条件语句的恰当表达式是什么?

bash pid process

169
推荐指数
7
解决办法
25万
查看次数

查看PS命令的完整输出

当我ps -aux在我的linux服务器上运行命令时,我使用putty连接到该命令,很少有进程太长而无法适应我当前的窗口宽度.还有其他选择吗?

- 更新 -

我很抱歉降级,我认为其他人也不会觉得答案有用,所以我降级了.

这是您要求的信息.

hadoop-user@hadoop-desk:~$ echo $TERM
xterm

hadoop-user@hadoop-desk:~$ stty -a
speed 38400 baud; rows 47; columns 158; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 …
Run Code Online (Sandbox Code Playgroud)

linux bash shell process

154
推荐指数
7
解决办法
22万
查看次数

如何从C#启动进程?

如何启动流程,例如在用户单击按钮时启动URL?

.net c# windows process process.start

149
推荐指数
9
解决办法
26万
查看次数

在父进程被终止时杀死子进程

我正在使用System.Diagnostics.Process我的应用程序中的类创建新进程.

当/如果我的应用程序崩溃了,我希望这个进程被杀死.但是如果我从任务管理器中删除我的应用程序,子进程就不会被杀死.

有没有办法让子进程依赖于父进程?

.net c# process

147
推荐指数
8
解决办法
7万
查看次数

我怎么知道进程是否正在运行?

当我获得对a的引用时System.Diagnostics.Process,如何知道进程当前是否正在运行?

.net c# process

145
推荐指数
5
解决办法
21万
查看次数

标签 统计

process ×10

.net ×4

c# ×4

bash ×3

linux ×2

shell ×2

clone ×1

exec ×1

fork ×1

java ×1

jsf ×1

lockfile ×1

pid ×1

primefaces ×1

process.start ×1

string ×1

updates ×1

windows ×1