Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C# Thread.Sleep();

Pokud jsem pochopil tvůj zmatečný projev, a kód, vadí ti, že pokud již aktivuješ kód, tak se provádí 5x.
A výpis se provede až na úplném konci vlákna (nikoliv v průběhu).

Jde o prioritu operací ve Win32API.
Grafické operace jsou nejnáročnější, a tak se změna provádí až ke konci všech ostatních výpočtů.

Pokud se to má chovat, jak zamýšlíš, tak třeba takto:

private void Pozdrav_Click(object sender, EventArgs e)
{

var worker = new BackgroundWorker();
worker.DoWork += new DoWorkEventHandler(worker_DoWork);
worker.RunWorkerAsync();
}

void worker_DoWork(object sender, DoWorkEventArgs e)
{
AnotherThread();
}

private void AnotherThread()
{
int a = Convert.ToInt32(numericUpDown2.Value);
a = a * 1000;

for (int z = 0; z < 5 && a != 0; z++)
{
DateTime start = DateTime.Now;
string s = ws.WSXPozdrav();
TimeSpan i = DateTime.Now - start;
Vypis3.Text += s + "\r\n";
Thread.Sleep(a);
}
}

Píšu z paměti, tak za nic neručím.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny