黑马程序员-线程和socket
来源:互联网 发布:数据库课程设计实验 编辑:程序博客网 时间:2024/04/19 23:33
----------------------Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
线程的实现:
.net中如何实现多线程
1) 线程是一定要执行一段代码的。所以要产生一个线程,必须先为这个线程写一个方法,这个方法中的代码就是该线程运行所要执行的代码。
2) 线程启动时,是通过委托调用该方法的。也就是线程启动时,调用传过来的委托,委托就会执行相应的方法,来实现线程执行方法。
我们怎么样来产生一个线程?
我们产生一个线程的步骤是:
1) 编写产生线程所要执行的方法。
2) 引用System.Threading命名空间
3) 实例化Thread类,并传入一个指向线程所要运行方法的委托
4) 调用Thread实例的Start方法,标记该线程可以被cpu执行了,但是具体执行时间是由cpu决定的。
前台线程和后台线程:
前台线程:只有所有的前台线程都关闭才能完成程序关闭时。
后台线程:只要所有的前台线程结束,后台线程自动结束。
Socket
Socket的概念:socket有“孔”“插座”的意思,但是它作为进程通信机制,是“插座”的意思。我们通常叫做“套接字”。
作用:它是用于描述ip地址和端口,是一个通信链的句柄(我们可以理解为是两个程序通信用的)
Socket有两种类型:
1) 流式socket
它是一种面向连接的socket,针对于面向连接的tcp服务应用,安全,但是效率低
2) 数据报式socket
它是一种无连接的socket,应对与无连接的udp服务应用,不安全(丢失,顺序混乱,在接收端要分析重排及要求重发),但是效率高。
Scoket的一般应用模式:
服务器端的socket(至少需要两个)
A. 一个负责接收客户端连接请求(但是不负责与客户端通信)
B. 没成功接收到一个客户端的连接便在服务端生产一个对应的socket
*在接收到客户端连接时创建。
*为每个连接成功的客户端请求在服务端都创建一个对应的scoket(负责和客户端通信)
客户端socket
*必须指定要连接的服务端地址和端口。
*通过创建一个socket对象来初始化一个到服务器端的tcp连接。
好了,接下来就做个简单的用socket的实例!
----------------------Windows Phone 7手机开发、.Net培训、期待与您交流! ---------------------- 详细请查看:http://net.itheima.com/
- 黑马程序员-线程和socket
- 黑马程序员线程Socket编程
- 黑马程序员-进程和线程
- 黑马程序员--学习多线程和Socket小结
- 黑马程序员---Socket和GUI的应用
- 黑马程序员---多线程和socket的编程
- 黑马程序员_线程和多线程
- 黑马程序员---Java的进程和线程
- 黑马程序员_单线程和多线程
- 黑马程序员---区分线程和进程
- 黑马程序员之socket
- Socket-黑马程序员
- 黑马程序员-socket笔记
- 【黑马程序员】Socket文件传输
- 《黑马程序员》socket---概述
- 《黑马程序员》socket---tcp
- 《黑马程序员》socket---tcp2
- 黑马程序员之多线程
- VS2010中CTRL+F5窗口也是一闪而过的解决办法
- strlen()函数
- oracle闪回
- 再说C++模板类的一些使用技巧
- oracle的闪回
- 黑马程序员-线程和socket
- fput(); fgetc();
- <<Windows CE 系统进程外组件应用开发 >> 文章的解读
- jetty 透明代理的实现
- linux 动态链接库的创建和使用--静态连接
- Sqlserver 数据库计算时间差
- Rails 笔记(一)
- waitpid
- 开弓没有回头箭——我的程序员之路