Вопрос по ThreadHelper.BackgroundWorker (Framework 1.1)
От: 3axapov  
Дата: 02.03.05 06:23
Оценка:
Есть несколько ThreadHelper.BackgroundWorker. Вызываю друг за другом их методы bwLoaderX.RunWorkerAsync(). У каждого в обработчике OnDoWork первой строкой после try стоит
System.Threading.Thread.CurrentThread.Name = "LoaderX"

периодически пара воркеров валится с криком

System.InvalidOperationException: This property has already been set and cannot be modified.
at System.Threading.Thread.set_Name(String value)
at myProject.Form1.bwLoaderX_DoWork(Object sender, DoWorkEventArgs doWorkArgs) in d:\...\form1.cs:line ....

в чем могут быть грабли? может lock чему-нить надо делать?


08.03.05 14:54: Перенесено модератором из '.NET GUI' — AndrewVK
Вопрос по ThreadHelper.BackgroundWorker (Framework 1.1)
От: Аноним  
Дата: 02.03.05 23:32
Оценка:
В MSDN есть пример, обратите внимание на комментарий:
using System;
using System.Threading;
class Name
{
    static void Main()
    {
        // Check whether the thread has previously been named
        // to avoid a possible InvalidOperationException.
        if(Thread.CurrentThread.Name == null)
        {
            Thread.CurrentThread.Name = "MainThread";
        }
        else
        {
            Console.WriteLine("Unable to name a previously " +
                "named thread.");
        }
    }
}





данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.