第1章__网络编程基础1.ppt
《第1章__网络编程基础1.ppt》由会员分享,可在线阅读,更多相关《第1章__网络编程基础1.ppt(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1Traffic Engineering 1999,Cisco Systems,Inc.网络软件技术网络软件技术郭庆北郭庆北郭庆北郭庆北 ise_ ise_ 网络编程基础网络编程基础多线程多线程2第一章第一章第一章第一章 网络编程基础网络编程基础网络编程基础网络编程基础多线程多线程多线程多线程1.多线程技术简介多线程技术简介2.线程线程API3.线程对象操作线程对象操作31.1 1.1 多线程技术简介多线程技术简介多线程技术简介多线程技术简介进程:进程:是对一段静态指令序列(程序)的动态执行过程。进程是系程是系统进行行资源分配和源分配和调度的基本度的基本单位位进程相关信息:用程相关信息:用户标
2、识、正在、正在执行的已行的已经编译好的程序、程序和数据在存好的程序、程序和数据在存储器中的位置等器中的位置等4线程:线程:同一个进程又可以划分为若干个独立的执行流,称为线程。线程可以看作是进程的一个实例。在Windows环境下,用户可以同时运行多个应用程序,每个执行的应用程序就是一个进程。线程是程是CPU调度和分配的基本度和分配的基本单位位并并发处理理5为为什么什么线线程程是网是网络编络编程程的基的基础础?6多线程带来如下好处:多线程带来如下好处:1 1)避免瓶颈;)避免瓶颈;2 2)并行操作;)并行操作;3 3)提高效率;)提高效率;在多线程中,通过优先级管理,可以使重要的程在多线程中,通过
3、优先级管理,可以使重要的程序优先操作,提高了任务管理的灵活性。序优先操作,提高了任务管理的灵活性。另一方面,在多另一方面,在多CPUCPU系统中,可以把不同的线程在系统中,可以把不同的线程在不同的不同的CPU CPU 中执行。中执行。7请注意:多线程不能滥用。请注意:多线程不能滥用。81.2 1.2 线程线程线程线程APIAPI一、一、创建线程创建线程HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes,DWORD dwStackSize,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID
4、 lpParameter,DWORD dwCreationFlags,LPDWORD lpThreadId);lpThreadAttributes:指定安全参数,当前进程创建的进程(子进程):指定安全参数,当前进程创建的进程(子进程)是否继承该句柄也由此参数确定,如不需控制可指定为是否继承该句柄也由此参数确定,如不需控制可指定为NULL。9dwStackSize:线程的堆栈大小,以字节为单位,该值上:线程的堆栈大小,以字节为单位,该值上取整到与其最接近的页面大小。如为取整到与其最接近的页面大小。如为0,则默认为调用线,则默认为调用线程的堆栈大小。程的堆栈大小。lpStartAddress:指向
5、一个线程实际运行代码的:指向一个线程实际运行代码的函数指针函数指针,原型为原型为DWORD WINAPI ThreadFunc(LPVOID data)。lpParameter:传递给线程函数的数据值。:传递给线程函数的数据值。dwCreationFlags:创建标志,如创建后立即执行还是挂:创建标志,如创建后立即执行还是挂起。起。lpThreadId:线程:线程ID的地址。的地址。10二、终止线程二、终止线程(1)Void ExitThread(DWORD dwExitCode)(2)线程函数)线程函数ThreadFunc()退出退出。(3)ExitThread会导致线程在清除构造器之前退出
6、,因此会导致线程在清除构造器之前退出,因此不建议使用。不建议使用。11三、三、创建事件函数:创建事件函数:HANDLE CreateEvent(LPSECURITY_ATTRIBUTES lpEventAttributes,BOOL bManualReset,BOOL bInitialState,LPCTSTR lpName);bManualReset:是否由程序员调用:是否由程序员调用ResetEvent函数对创建的事件进行函数对创建的事件进行显式复位。显式复位。bInitialState:指定事件是否为激发状态。:指定事件是否为激发状态。lpName:事件的属性。:事件的属性。12四、等待
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- _ 网络 编程 基础
限制150内