初次接触多程序同步, 很是头疼, 望各位前辈帮帮小弟, 先谢了
namespace ThreadDemo
{
public partial class Form1 : Form
{
private Yan y = new Yan(); public Form1()
{
InitializeComponent(); } private void button1_Click(object sender, EventArgs e)
{
Thread t1 = new Thread(T1);
t1.Name = "t1";
Thread t2 = new Thread(T2);
t2.Name = "t2"; t1.Start();
t2.Start();
} private void T1()
{
lock (y)
{
for (int i = 0; i < 10000000; ++i) ;
y.str = "先";
MessageBox.Show(y.str);
}
} private void T2()
{
y.str = "后";
MessageBox.Show(y.str);
}
} public class Yan
{
public string str = "";
}
}
我让他先弹出“先”, 然后再弹出“后”, 怎么搞?求解, 谢谢!!!
namespace ThreadDemo
{
public partial class Form1 : Form
{
private Yan y = new Yan(); public Form1()
{
InitializeComponent(); } private void button1_Click(object sender, EventArgs e)
{
Thread t1 = new Thread(T1);
t1.Name = "t1";
Thread t2 = new Thread(T2);
t2.Name = "t2"; t1.Start();
t2.Start();
} private void T1()
{
lock (y)
{
for (int i = 0; i < 10000000; ++i) ;
y.str = "先";
MessageBox.Show(y.str);
}
} private void T2()
{
y.str = "后";
MessageBox.Show(y.str);
}
} public class Yan
{
public string str = "";
}
}
我让他先弹出“先”, 然后再弹出“后”, 怎么搞?求解, 谢谢!!!
解决方案 »
- C# 添加记录后如何立即获得其ID号
- winforms中,在一个窗体中能不能触发另一个窗体的load事件
- 求一挑数据算法.. 请帮忙!! tks!!
- 想换工作 大家给点意见
- 英文字符串截取问题,谢谢,在线等!!!
- 请问 如何获得安装程序所在的路径
- 怎么像word一样单独保存。
- C#中如何实现变长参数的函数,类似c中的print 里面想放几个就放几个参数的那种,我只在网上找到了C类的文章,在C#中怎么实现??
- C#中SendMessage向SysListView32控件发消息
- 用tcpListener通讯,连接断了,怎么重新连接啊?
- C#中DataGridView控件无法显示数据库数据
- c# 正则提取数据,遇到点问题,大虾们帮解决下,谢谢!
private void T2()
{
lock (y)
{
y.str = "后";
MessageBox.Show(y.str);
}
}
t2中也得加lockThanks
{
lock (y)
{
for (int i = 0; i < 10000000; ++i) ;
y.str = "先";
MessageBox.Show(y.str);
}
manualEvent.Set();
} private void T2()
{
manualEvent.WaitOne(); lock(y)
{
y.str = "后";
MessageBox.Show(y.str);
}
}