【发布时间】:2011-11-01 14:14:06
【问题描述】:
为什么我的 c# 服务器 gui 挂起?知道我哪里出错了吗?谢谢
就像,当我单击按钮 1 时,gui 挂起,但它仍然可以处理请求并侦听和接受传入的客户端连接。
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
TcpListener listener = null;
TcpClient client = null;
NetworkStream stream = null;
BinaryWriter writer = null;
BinaryReader reader = null;
string vouchercode;
string username;
string password;
string reseller;
string fresh;
string result;
private void button1_Click(object sender, EventArgs e)
{
try
{
listener = new TcpListener(new IPAddress(new byte[] {127,0,0,1}), 6666);
listener.Start();
while (true)
{
label1.Text = "waiting....";
using (client = listener.AcceptTcpClient())
{
label1.Text = "Connection request accepted!";
using (stream = client.GetStream())
{
//some codes here ..
}
}
}
}
catch (WebException ex)
{
Console.WriteLine(ex.Message);
}
finally
{
if (listener != null) listener.Stop();
if (writer != null) writer.Close();
if (reader != null) reader.Close();
}
}
}
}
【问题讨论】:
标签: c# user-interface blocking