Обе следующие строки работают одинаково. но есть ли какая-то скрытая разница? и какой из них предпочтительнее?
Thread t1 = new Thread(aMethod);
Thread t2 = new Thread(new ThreadStart(aMethod));
Спасибо.
Ответ 1
Нет никакой разницы. Обе строки равны.
Ответ 2
Компилятор С# преобразует
Thread t1 = new Thread(aMethod);
выражение
Thread t2 = new Thread(new ThreadStart(aMethod));
Ответ 3
Они одинаковы, но второй позволяет вам использовать дополнительный параметр в методе запуска Thread (хорошо используя ParametrizedThreadStart вместо ThreadStart).
Ответ 4
ThreadStart представляет метод, который выполняется в потоке, так что это точно то же самое.