.............................Windows Phone 7手机开发 .Net培训.................................
1、
主要介绍单线程和多线程的
2、
多线程的重入
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
//注意引用命名空间
namespace 多线程
{
public
partial class Form1 :
Form
{
public Form1()
{
//TextBox.CheckForIllegalCrossThreadCalls = false;//对于textbox允许跨线程访问,一般是直接CheckForIllegalCrossThreadCalls=false;
CheckForIllegalCrossThreadCalls =
false;
InitializeComponent();
}
private
void btnSingleThread_Click(
object sender,
EventArgs e)
//单线程的编写
{
countTime();
}
void countTime()
{
#region
double i;
DateTime beginTime =
DateTime.Now;
for (i = 0; i < 999999999; i++)
{
}
TimeSpan ts =
DateTime.Now.Subtract(beginTime);
MessageBox.Show(
"循环完毕。。。"+ts.Milliseconds);
#endregion
}
private
void MulThread_Click(
object sender,
EventArgs e)
//多线程的编写
{
Thread thread =
new Thread(countTime);
//事件委托代码
thread.IsBackground =
true;
//后台进程
thread.Start();
//开始启用线程
}
void txtChange()
{
for (
int i = 0; i < 200000; i++)
{
txtShow.Text = i.ToString();
Console.WriteLine(
Thread.CurrentThread.Name +
"i=" + i);
}
}
private
void btnOverRider_Click(
object sender,
EventArgs e)
//多线程重写
{
Thread thread1 =
new Thread(txtChange);
thread1.Name =
"t1";
thread1.IsBackground =
true;
thread1.Start();
Thread thread2 =
new Thread(txtChange);
thread2.Name =
"t2";
thread2.IsBackground =
true;
thread2.Start();
}
}
}
1.Socket 作为进程通信机制,通常称作套接字,用于描述IP地址和端口,是一个通信连的句柄。(其实2.是两个程序通信用的通道)相当于电话机
3在internet上有很多这样的主机,这些主机一般运行多个服务软件,同时提供几种服务。每个服务都打4开一个socket并绑定到一个端口上不同的端口对应于不同的应用程序
5.Socket有两种类型:
流式socket(stream)
是一种面向连接的socket,针对于面向连接的tcp服务应用,安全但是效率低;
数据报式socket(datagram)
是一种无连接的socket,对应于无连接的UDP服务应用不安全(易丢失,顺序混乱,在接收端要分析重排及要求重发)但是效率高
Socktet一般应用模式(服务器端和客户端)
一个负责接收客户端连接请求(但是不负责和客服端通信)
每成功接收到一个客户端的链接便在服务端产生一个对应的socket(负责和客服端通信)
在接收到客户端连接时创建
为每个连接成功的客户端创建一个对应socket
客户端得socket
必须指定要连接的服务端地址和端口
通过创建一个socket对象来初始化一个到服务器端得TCP连接
Socket的通信过程
服务器端
申请一个socket
绑定到一个iP地址和一个端口上
开启侦听,等待接受连接
客户端
申请一个socket
连接服务器(指明ip地址和端口号)
服务器端接收到连接请求后,产生一个新的socket(端口大于1024)与客服端建立连接并进行通信,原侦听socket继续侦听
Socketconnection.remoteEndPoint .tostring()是保存当前的链接客户端得
IP和端口
.............................Windows Phone 7手机开发 .Net培训.................................