性能分析:频繁使用fork/exec调用命令

news/2024/7/4 4:06:59

文章目录

  • 简介
  • function 跟踪

简介

最近遇到一个英语程序频繁调用rm命令删除文件的操作。调用rm的过程大体上是:先fork出一个线程,然后调用execv函数启动rm命令。建议的方式是使用C或者C++提供的库函数来做文件删除操作。省去内核交互及线程初始化等一系列的操作。

function 跟踪

perf命令跟踪结果,可以看到fork和exec的实际操作还是很占CPU

# Samples: 415K of event 'cpu-clock'
# Event count (approx.)<

http://www.niftyadmin.cn/n/1525693.html

相关文章

树莓派安装Opencv(验证可行,安装速度快)

设备型号 树莓派&#xff08;RPI&#xff09;-4B 安装步骤 步骤1/4&#xff1a;安装依赖项 # 更新apt-get sudo apt-get update && sudo apt-get upgrade# 安装此次必需的软件 sudo apt-get install -y build-essential cmake make pkg-config# 多种图片格式支持包…

C++: STL: atomic

文章目录参考易犯的错误产生错误的原因正确的方法参考 https://en.cppreference.com/w/cpp/atomic/atomic 易犯的错误 atomic flag(false); thread th1; 352 void a() { 356 if (flag false) { 357 th1 thread(&func); 358 flag true; 359 } 360 } 这里直接对flag做等…

C++: std::call_once vs atomic

文章目录 简介引子分析深入pthread_once对比简介 这里不是介绍call_once的详细用法,可以在网上搜。https://en.cppreference.com/w/cpp/thread/call_once 这里介绍一下call_once在glibc++里的实现,与atomic的对比。 引子 有个同事,犯了一个错误,详情见:https://mzhan01…

Kernel:glibc: pthread_create 返回 EPERM (1)错误分析

文章目录参考解决方法遇到了一个返回1&#xff08;permission deny的错误&#xff09;参考 https://stackoverflow.com/questions/9313428/getting-eperm-when-calling-pthread-create-for-sched-fifo-thread-as-root-on-lin 解决方法 https://blog.csdn.net/qq_36428903/art…

Openssl, Alert, Fatal, handshake failure 40

文章目录 错误原因代码错误 在测试人员发现,客户端发送到服务端的Client Hello消息被拒掉了,原因是: Transport Layer Security TLSv1.2 Record Layer: Alert (Level: Fatal, Description: Handshake Failure) Content Type: Alert (21) Version: TLS 1.2 (0x0303) Length:…

Linux: 命令:echo

文章目录软件使用说明需要注意的问题软件 [root10 ~]# which echo /usr/bin/echo [root10 ~]# file /usr/bin/echo /usr/bin/echo: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x 86-64.so.2, for GNU/Linux 3…

c/c++ 静态代码检查工具

文章目录道理呢大家都懂&#xff0c;但是需要时间消化&#xff0c;而且人还是易犯错误的动物lintgcc 12sonarqube道理呢大家都懂&#xff0c;但是需要时间消化&#xff0c;而且人还是易犯错误的动物 所以才有了&#xff0c;这些个静态代码检查工具。 lint 古老的工具。 Lint…

gcc: error: : No such file or directory

分享的原因&#xff0c;一开始把我给唬住了&#xff0c;怎么可能出现这个错误&#xff01; /usr/bin/gcc ‘’ a.c // 注意这里有一对单引号&#xff0c;gcc 认为这个单引号里的也是个文件&#xff0c;不过是一个空串&#xff0c;找不到。所以报下面的错误&#xff0c;一开始感…