栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

C语言编程技巧-使用多线程提速

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言编程技巧-使用多线程提速

使用多线程提升4-5倍运行速度 一、linux 中使用多线程能提升多少速度?
  1. 假设要对200万个随机数进行加密。

  2. 如果使用单线程和多线程来解决,分别要耗时多久呢?代码

    1. 我统计了一下在树莓派上,单线程运行结果差不读8s左右:

      Debug>>>17-多线程优化运行速度/17-thread_speed.c->print_time_now()->line.21:start:1640878758.124958
      
      Debug>>>17-多线程优化运行速度/17-thread_speed.c->print_time_now()->line.21:start:1640878766.341765
      
      
    2. 如果使用多线程运行结果,差不多2s左右:

      Debug>>>17-多线程优化运行速度/17-thread_speed.c->print_time_now()->line.21:start:1640878766.341874
      
      Debug>>>17-多线程优化运行速度/17-thread_speed.c->print_time_now()->line.21:start:1640878768.419132
      
  3. 而如果你是用多线程去做是用插入排序的算法排序。速度能差20多倍。

    1. 但是我觉得是用多线程做排序,已经类似归并排序方法了。所以还是以加密算法差距为准。
二、实际案例
  1. 我在实际情况中,使用这种方法解决了一个这样的问题。
    1. 嵌入式设备中。用户希望对电话本的数据进行后台加密。
    2. 最多有2000条,每条数据需要先做拆分,分离出需要的数据,和现有数据比对,没有重复,再进行加密。
    3. 如果使用单线程做,用户点击save之后,需要等待14s左右。
    4. 使用了多线程,只需要2-3s。14s的等待用户是无法接受的。但是2-3s,在数据多的情况下,用户是可以理解的。
    5. 可见这个技巧的重要性。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/685377.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号