我需要使用线程在同一时间(内环)按多个键,按下一秒钟后,重复此任务。
我用这个代码,但我发现了一些问题,如果我参加的第一个线程不能按在同一时间,但如果不使用在相同的时间,但所有的线程开始记者。private void play()
{
for (int i = 0; i < 2; i++)
{
Thread th=null;
for (int j = 0; j < 2;j++ )
{
SubNote sub= ArrayPlayNote[i].NotesSameTime[j];
ThreadStart starter = delegate { MessageSub(sub); };
th = new Thread(starter);
th.Start();
}
th.Join();
}
}
///////////////////////////////////////////////////////
Keyboard ky = new Keyboard();
private void MessageSub( SubNote sub)
{
ky.pianoControl1.PressPianoKey(sub.KeyNum);
Thread.Sleep(1000);
ky.pianoControl1.ReleasePianoKey(sub.KeyNum);
}
感谢帮助我。