Объект в настоящее время используется в другом месте - PullRequest
0 голосов
/ 25 ноября 2011

Я использую следующий код

Произошла следующая ошибка

Объект в настоящее время используется в другом месте.

Пожалуйста, покажи мне правильный путь

 Random rnd = new Random();

        Pen p = new Pen(Color.Black);


        Parallel.For(0, 1000,
                     i =>
                     pictureBox1.CreateGraphics().DrawEllipse(p, rnd.Next(0, pictureBox1.Width),
                                                              rnd.Next(pictureBox1.Height),
                                                              10, 20)); // error runtime

1 Ответ

0 голосов
/ 25 ноября 2011

rnd.Next имеет побочные эффекты и не является потокобезопасным.

Попробуйте решение Jon Skeet ThreadLocal.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...