- 0
- 0
- 约1.74万字
- 约 10页
- 2023-04-25 发布于上海
- 举报
Disclaimer :
Disclaimer : The original version of this article was first published on IBM developerWorks, and is property of Westtech Information Services. This document is an updated version of the original article, and contains various improvements made by the Gentoo Linux Documentation team.
This document is not actively maintained.
POSIX threads explained, part 1
Content:
A simple and nimble tool for memory sharing Threads are fun
Knowing how to properly use threads should be part of every good programmers repertoire. Threads are similar to processes. Threads, like processes, are time-sliced by the kernel. On uniprocessor systems the kernel uses time slicing to simulate simultaneous execution of threads in much the same way it uses time slicing with processes. And, on multiprocessor systems, threads are actually able to run simultaneously, just like two or more processes can.
So why is multithreading preferable to multiple independent processes for most cooperative tasks? Well, threads share the same memory space.
Independent threads can access the same variables in memory. So all of your programs threads can read or write the declared global integers. If youve ever programmed any non-trivial code that uses fork(), youll recognize the importance of this tool. Why? While fork() allows you to create multiple processes, it also creates the following communication problem: how to get multiple processes, each with their own independent memory space, to communicate. There is no one simple answer to this problem. While there are many different kinds of local IPC (inter-process communication), they all suffer from two important drawbacks:
They impose some form of additional kernel overhead, lowering performance.
In almost all situations, IPC is not a natural extension of your code. It often dramatically increases the complexity of your program.
Double bummer: overhead and complication arent good things. If youve ever had to make massive modifications to one of your pro
您可能关注的文档
- 11000地形测量技术设计.docx
- 20000字起笔部首检字表.docx
- 20148小继教培训心得体会.docx
- 20151人教版三年级数学上册教学工作总结.docx
- 20165理论题分析和总结.docx
- 20192广东公需课 中华传统美德.docx
- 22018年黄浦区中考物理二模卷含答案.docx
- 070602EditPlus安装步骤分析和总结.docx
- 100128万达国际时报文案.docx
- 100413晨报万达软文.docx
- 中国国家标准 GB/Z 37551.300-2026海洋能 波浪能、潮流能及其他水流能转换装置 第300部分:河流能转换装置发电性能评估.pdf
- GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法.pdf
- 中国国家标准 GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法.pdf
- 《GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法》.pdf
- 中国国家标准 GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义.pdf
- GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义.pdf
- 《GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义》.pdf
- 中国国家标准 GB/T 4937.37-2025半导体器件 机械和气候试验方法 第37部分:采用加速度计的板级跌落试验方法.pdf
- 《GB/T 4937.10-2025半导体器件 机械和气候试验方法 第10部分:机械冲击 器件和组件》.pdf
- 中国国家标准 GB/T 44937.2-2025集成电路 电磁发射测量 第2部分:辐射发射测量TEM小室和宽带TEM小室法.pdf
原创力文档

文档评论(0)