推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

多线程开发下类实例析构 时 资源释放

更新时间:2018-10-29 11:54:13 大小:374K 上传用户:kangh123查看TA发布的资源 标签:多线程 下载积分:1分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

本文主要讲我个人在多线程开发方面的一些粗浅经验。总结了一两种常用的线程模型,

归纳了进程间通讯与线程同步的最佳实践,以期用简单规范的方式开发多线程程序。

文中的“多线程服务器”是指运行在Linux 操作系统上的独占式网络应用程序。硬件

平台为Intel x64 系列的多核CPU,单路或双路SMP 服务器(每台机器一共拥有四个核或

八个核,十几GB 内存),机器之间用百兆或千兆以太网连接。这大概是目前民用PC 服务

器的主流配置。

本文不涉及Windows 系统,不涉及人机交互界面(无论命令行或图形);不考虑文件

读写(往磁盘写log 除外),不考虑数据库操作,不考虑Web 应用;不考虑低端的单核主

机或嵌入式系统,不考虑手持式设备,不考虑专门的网络设备,不考虑高端的>=32 核Unix

主机;只考虑TCP,不考虑UDP,也不考虑除了局域网络之外的其他数据收发方式(例如

串并口、USB口、数据采集板卡、实时控制等)。

有了以上这么多限制,那么我将要谈的“网络应用程序”的基本功能可以归纳为“收到

数据,算一算,再发出去”。在这个简化了的模型里,似乎看不出用多线程的必要,单线程

应该也能做得很好。“为什么需要写多线程程序”这个问题容易引发口水战,我放到另一篇

博客里讨论。请允许我先假定“多线程编程”这一背景。

“服务器”这个词有时指程序,有时指进程,有时指硬件(无论虚拟的或真实的),请

注意按上下文区分。另外,本文不考虑虚拟化的场景,当我说“两个进程不在同一台机器上”,

指的是逻辑上不在同一个操作系统里运行,虽然物理上可能位于同一机器虚拟出来的两台

“虚拟机”上。


部分文件列表

文件名 大小
多线程服务器的常用编程模型.pdf 374K

【关注B站账户领20积分】

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单
  • 21ic下载 打赏310.00元   3天前

    用户:w178191520

  • 21ic下载 打赏310.00元   3天前

    用户:小猫做电路

  • 21ic下载 打赏310.00元   3天前

    用户:zhengdai

  • 21ic下载 打赏220.00元   3天前

    用户:gsy幸运

  • 21ic下载 打赏220.00元   3天前

    用户:jh0355

  • 21ic下载 打赏210.00元   3天前

    用户:jh03551

  • 21ic下载 打赏60.00元   3天前

    用户:sun2152

  • 21ic下载 打赏60.00元   3天前

    用户:xuzhen1

  • 21ic下载 打赏80.00元   3天前

    用户:xzxbybd

  • 21ic下载 打赏60.00元   3天前

    用户:铁蛋锅

  • 21ic下载 打赏60.00元   3天前

    用户:liqiang9090

  • 21ic下载 打赏20.00元   3天前

    用户:方中禾

  • 21ic下载 打赏20.00元   3天前

    用户:w1966891335

  • 21ic下载 打赏30.00元   3天前

    用户:玉落彼岸

  • 21ic下载 打赏15.00元   3天前

    用户:kk1957135547

  • 21ic下载 打赏15.00元   3天前

    用户:w993263495

  • 21ic下载 打赏15.00元   3天前

    用户:x15580286248

  • 21ic下载 打赏20.00元   3天前

    用户:WK520077778

  • 21ic下载 打赏25.00元   3天前

    用户:hp860629

  • 21ic下载 打赏15.00元   3天前

    用户:sbfd010

  • 21ic下载 打赏10.00元   3天前

    用户:严光辉

推荐下载