LINUX下system和execl有什么差异?

简介: LINUX下system和execl有什么差异?

用C都可以调用,启动一个应用,实际上差别很大。


  • system:启动另外一个应用之后,新应用的进程独立,当前进程也活着。即有两个互不影响的进程。
  • execl:启动另外一个应用之后,新应用的进程即是当前进程。进程数是一个。


需要强调的是:


 system/popen都是阻塞的,即运行不结束就不会返回。


 如果不需要阻塞,马上返回,加一个后台运行符号 & 即可。


目录
相关文章
|
7月前
|
算法 Linux API
【Linux系统编程】Linux下删除文件的 API方式以及文件删除机制差异
【Linux系统编程】Linux下删除文件的 API方式以及文件删除机制差异
148 0
|
3月前
|
Docker 容器
14 response from daemon: open \\.\pipe\docker_engine_linux: The system cannot find the file speci
14 response from daemon: open \\.\pipe\docker_engine_linux: The system cannot find the file speci
40 1
|
4月前
|
IDE 数据可视化 Linux
在Linux中,如何比较两个文件差异?
在Linux中,如何比较两个文件差异?
|
5月前
|
Ubuntu Linux UED
|
6月前
|
Ubuntu Linux 编译器
当自身需要使用的 gcc版本 和Linux 默认版本 存在大版本差异时怎样处理
当自身需要使用的 gcc版本 和Linux 默认版本 存在大版本差异时怎样处理
148 2
|
5月前
|
消息中间件 Linux
【Linux】进程间通信——system V(共享内存 | 消息队列 | 信号量)(下)
【Linux】进程间通信——system V(共享内存 | 消息队列 | 信号量)(下)
78 0
|
5月前
|
消息中间件 存储 Linux
【Linux】进程间通信——system V(共享内存 | 消息队列 | 信号量)(上)
【Linux】进程间通信——system V(共享内存 | 消息队列 | 信号量)(上)
86 0
|
7月前
|
消息中间件 Unix Linux
[Linux打怪升级之路]-system V共享内存
[Linux打怪升级之路]-system V共享内存
[Linux打怪升级之路]-system V共享内存
|
5月前
|
Linux Perl
Linux命令sdiff详解:并排比较与差异显示
`sdiff`是Linux下的命令行工具,用于并排比较两个文件的差异。它直观地显示不同之处,用`>`和`<`标记差异。主要特点包括并排显示、灵活性和交互性。参数如`-s`仅显示差异行,`-i`忽略大小写,`-o FILE`将结果输出到文件。示例:`sdiff file1.txt file2.txt`。最佳实践包括根据需要调整输出宽度,结合其他命令使用,和利用交互功能。注意用于文本文件比较,大文件可能消耗资源。
|
6月前
|
消息中间件 Linux
【Linux】System V 消息队列(不重要)
【Linux】System V 消息队列(不重要)