System.Threading.WaitCallback - тип параметра?
От: Holms США  
Дата: 23.01.07 23:01
Оценка:
Привет

Как правильно написать прототип для этой функции
public static void StartAborter(object state)
    {
      AbortWindow dlg = new AbortWindow();

      System.Threading.ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(state), dlg);
      dlg.ShowDialog();
    }

В хелпе пишут что
public delegate void WaitCallback (    Object state)

а студия выдает ошибку
Error    2    'state' is a 'variable' but is used like a 'method'

на строку
System.Threading.ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(state), dlg);


Какой тогда тип параметра?
Спасибо
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
The life is relative and reversible.
Re: System.Threading.WaitCallback - тип параметра?
От: Poul_Ko Казахстан  
Дата: 24.01.07 02:49
Оценка:
Здравствуйте, Holms, Вы писали:
H>...

Синтаксически правильно будет так:
AbortWindow dlg = new AbortWindow();
System.Threading.ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(StartAborter), dlg);
...
public static void StartAborter(object state)
{
  AbortWindow dlg = (AbortWindow)state;
  dlg.ShowDialog();
}


Вообще, в метод QueueUserWorkItem требуется передать экземпляр делегата WaitCallback. Выделенный кусок кода как раз создаёт такой делегат, этот делегат "указывает" на метод StartAborter. Второй параметер QueueUserWorkItem передаётся при вызове метода, на который ссылается делегат (т.е. StartAborter) в качестве параметра state.
Brainbench transcript #6370594
RE: System.Threading.WaitCallback - тип параметра?
От: Аноним  
Дата: 24.01.07 01:01
Оценка:
Привет

Как правильно написать прототип для этой функции

public static void StartAborter(object state)
{
AbortWindow dlg = new AbortWindow();

System.Threading.ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(state), dlg);
dlg.ShowDialog();
}
В хелпе пишут что

public delegate void WaitCallback ( Object state)
а студия выдает ошибку

Error 2 'state' is a 'variable' but is used like a 'method'
на строку

System.Threading.ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(state), dlg);

Какой тогда тип параметра?
Спасибо


WaitCallback Delegate = callback method
Anatoly Lubarsky


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