当前位置: 首页 > news >正文

黄页网站推广服务设计logo的ai软件

黄页网站推广服务,设计logo的ai软件,有没关于做动画设计师的网站,书签制作方法使用jemalloc实现信号驱动的程序堆栈信息打印 本文介绍应用如何集成jemalloc#xff0c;在接收到SIGUSR1信号10时打印程序的堆栈信息。 1. 编译jemalloc 首先#xff0c;确保你已经编译并安装了启用prof功能的jemalloc。以下是ubuntu18.04上的编译步骤#xff1a; git c…使用jemalloc实现信号驱动的程序堆栈信息打印 本文介绍应用如何集成jemalloc在接收到SIGUSR1信号10时打印程序的堆栈信息。 1. 编译jemalloc 首先确保你已经编译并安装了启用prof功能的jemalloc。以下是ubuntu18.04上的编译步骤 git clone https://github.com/jemalloc/jemalloc.git # 本文测试的版本是jemalloc-5.3.0 cd jemalloc ./configure --prefix/usr/local --enable-prof make -j10 make install2. 测试 假如你的需要集成的程序为example通过LD_PRELOAD同时加载jemalloc和钩子库按照以下步骤运行和测试 设置环境变量 export MALLOC_CONFprof:true,prof_active:true,lg_prof_sample:0,tcache:false,prof_prefix:jeprof.outprof:true 启用配置文件prof_active:true 启用性能分析lg_prof_sample:0 设置采样率为最频繁tcache:false禁用线程缓存Thread Cache。 禁用线程缓存可能会影响性能但在进行性能分析时可以提供更准确的内存分配数据。 prof_prefix:jeprof.out 指定性能分析输出文件前缀 使用killall -10 example发送SIGUSR1信号以触发堆栈信息打印 killall -10 example # 或者 killall -SIGUSR1 example通过以上步骤你可以在接收到SIGUSR1信号时打印jemalloc的堆栈信息并将其输出到本地目录。 本文得到的堆栈信息文件名为jeprof.out.60571.0.m0.heap ,通过如下命令分析该堆栈信息文件 jeprof --show_bytes --text --lines ./example ./jeprof.out.60571.0.m0.heap解析的结果为 $ jeprof --show_bytes --text --lines ./example ./jeprof.out.60571.0.m0.heap Using local file ./example. Using local file ./jeprof.out.60571.0.m0.heap. Total: 83512 B83512 100.0% 100.0% 83512 100.0% prof_backtrace_impl /home/test/jemalloc-5.3.0/src/prof_sys.c:1030 0.0% 100.0% 1024 1.2% _IO_new_file_overflow /build/glibc-2ORdQG/glibc-2.27/libio/fileops.c:7590 0.0% 100.0% 1024 1.2% _IO_new_file_xsputn /build/glibc-2ORdQG/glibc-2.27/libio/fileops.c:12660 0.0% 100.0% 1024 1.2% __GI__IO_doallocbuf /build/glibc-2ORdQG/glibc-2.27/libio/genops.c:3650 0.0% 100.0% 1024 1.2% __GI__IO_file_doallocate /build/glibc-2ORdQG/glibc-2.27/libio/filedoalloc.c:1010 0.0% 100.0% 1024 1.2% __GI__IO_fwrite /build/glibc-2ORdQG/glibc-2.27/libio/iofwrite.c:390 0.0% 100.0% 1592 1.9% __libc_start_main /build/glibc-2ORdQG/glibc-2.27/csu/../csu/libc-start.c:3100 0.0% 100.0% 81920 98.1% _dl_start_user :?0 0.0% 100.0% 1592 1.9% _start ??:?0 0.0% 100.0% 8 0.0% allocateDouble /home/test/jemalloc_test/example.cpp:190 0.0% 100.0% 80 0.1% allocateDynamicArray /home/test/jemalloc_test/example.cpp:32 (discriminator 1)0 0.0% 100.0% 448 0.5% allocateIntArray /home/test/jemalloc_test/example.cpp:130 0.0% 100.0% 1024 1.2% allocateIntArray /home/test/jemalloc_test/example.cpp:140 0.0% 100.0% 1472 1.8% allocateMemory /home/test/jemalloc_test/example.cpp:510 0.0% 100.0% 8 0.0% allocateMemory /home/test/jemalloc_test/example.cpp:520 0.0% 100.0% 32 0.0% allocateMemory /home/test/jemalloc_test/example.cpp:530 0.0% 100.0% 80 0.1% allocateMemory /home/test/jemalloc_test/example.cpp:540 0.0% 100.0% 32 0.0% allocateString /home/test/jemalloc_test/example.cpp:250 0.0% 100.0% 81920 98.1% call_init /build/glibc-2ORdQG/glibc-2.27/elf/dl-init.c:720 0.0% 100.0% 83512 100.0% imalloc (inline) /home/test/jemalloc-5.3.0/src/jemalloc.c:26940 0.0% 100.0% 83512 100.0% imalloc_body (inline) /home/test/jemalloc-5.3.0/src/jemalloc.c:25500 0.0% 100.0% 83512 100.0% je_malloc_default /home/test/jemalloc-5.3.0/src/jemalloc.c:27220 0.0% 100.0% 83512 100.0% je_prof_backtrace /home/test/jemalloc-5.3.0/src/prof_sys.c:2840 0.0% 100.0% 83512 100.0% je_prof_tctx_create /home/test/jemalloc-5.3.0/src/prof.c:1950 0.0% 100.0% 1592 1.9% main /home/test/jemalloc_test/example.cpp:730 0.0% 100.0% 83512 100.0% prof_alloc_prep (inline) /home/test/jemalloc-5.3.0/include/jemalloc/internal/prof_inlines.h:1410 0.0% 100.0% 81920 98.1% std::__once_callable ??:00 0.0% 100.0% 1024 1.2% std::__ostream_insert ??:?0 0.0% 100.0% 1024 1.2% std::operator ??:?0 0.0% 100.0% 568 0.7% void* fallback_impl /home/test/jemalloc-5.3.0/src/jemalloc_cpp.cpp:98 3. 本人测试的example.cpp代码 以下是完整的example.cpp代码编译方法: g -g -o example example.cpp // g -g -o example example.cpp #include jemalloc/jemalloc.h // jemalloc #include sys/mman.h // mmap, munmap #include unistd.h // usleep #include csignal // signal, sigaction #include cstdlib // rand()和srand() #include ctime // time() #include iostream #include string #include vector// 分配int数组 void allocateIntArray() {const int* intPtr new int[100];std::cout Allocated int array at: intPtr std::endl; }// 分配double void allocateDouble() {const double* doublePtr new double(3.14);std::cout Allocated double at: doublePtr , value: *doublePtr std::endl; }// 分配字符串 void allocateString() {const std::string* strPtr new std::string(Hello, World!);std::cout Allocated string at: strPtr , value: *strPtr std::endl; }// 分配动态数组 void allocateDynamicArray() {size_t arraySize 10;size_t* const arrayPtr new size_t[arraySize];std::cout Allocated array of arraySize ints at: arrayPtr std::endl;for (size_t i 0; i arraySize; i) {arrayPtr[i] i;} }// 使用mmap分配内存 void allocateMmap() {size_t mmapSize 4096; // 4KBconst void* mmapPtr mmap(nullptr, mmapSize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);if (mmapPtr MAP_FAILED) {perror(mmap failed);} else {std::cout Allocated mmap at: mmapPtr , size: mmapSize bytes std::endl;} }void allocateMemory() {allocateIntArray();allocateDouble();allocateString();allocateDynamicArray();allocateMmap(); }// 信号处理函数 void signalHandler(int signum) {std::cout Signal ( signum ) received, printing heap profile: std::endl;mallctl(prof.dump, nullptr, nullptr, nullptr, 0); }int main() {// 设置信号处理函数struct sigaction action;action.sa_handler signalHandler;sigemptyset(action.sa_mask);action.sa_flags 0;sigaction(SIGUSR1, action, nullptr);usleep(100000); // 100msallocateMemory();while (true) {usleep(100000); // 100ms}return 0; }
http://www.w-s-a.com/news/212840/

相关文章:

  • 有搜索引擎作弊的网站企业建设H5响应式网站的5大好处6
  • 是做网站编辑还是做平面设计seo外包公司接单
  • 做性的网站有哪些苏州专业网站设计制作公司
  • 陵水网站建设友创科技十大优品店排名
  • 想换掉做网站的公司简要说明网站制作的基本步骤
  • 国企公司网站制作wordpress 浮动定位
  • 网站网页直播怎么做的企业网站建设推荐兴田德润
  • 网站建设熊猫建站厦门seo全网营销
  • 扁平网站设计seo是什么岗位的缩写
  • 工商企业网站群晖配置wordpress 80端口
  • 企业网站建设流程步骤镇江东翔网络科技有限公司
  • 网络工程师和做网站哪个难网络建站如何建成
  • 网站建设需要哪些项目游民星空是用什么做的网站
  • 旅游网站建设要如何做百度商城网站建设
  • destoon 网站搬家中国企业500强都有哪些企业
  • 商城网站前端更新商品天天做吗哈尔滨做网站优化
  • 新乡网站开发wordpress 产品分类侧边栏
  • 网站自己做自己的品牌好做互联网企业分类
  • 项目网站建设方案石家庄网站快速排名
  • 网站开发大作业报告做电商网站的参考书
  • Apache局域网网站制作wordpress外链自动保存
  • 网站备案号要怎么查询千锋教育培训机构地址
  • 门户网站建设要求几款免费流程图制作软件
  • 花生壳域名可以做网站域名吗wordpress内链工具
  • 猎头公司网站模板网站伪静态作用
  • 工程建设教育网站html成品网页模板下载
  • 同一ip 网站 权重wordpress 菜单 小图标
  • 网站没有icp备案wordpress d8主题 4.1
  • 手机网站建设推荐企业宣传页模板
  • 杭州市富阳区建设局网站动态域名做网站