Подтвердить что ты не робот

Нужно ли мне убивать нить, написанную так? Или это автоматически закончится?

Используя код, подобный приведенному ниже коду, новый поток будет создан самостоятельно после возвращения функции?

new Thread(() =>
{
    function();
}).Start();

Я новичок в потоковом режиме, поэтому я подумал.

4b9b3361

Ответ 1

Это хорошо... если это беспокоит то, что Thread может не завершиться до завершения вашего исполняемого файла, вам может понадобиться:

new Thread(() =>
    {
        function();
    }){IsBackground = true}.Start();

Фоновые потоки не будут препятствовать выходу вашего приложения.

Ответ 2

Да, поток завершится после завершения функции, но если у вас нет параметра, который нужно использовать внутри функции, я бы не начал ее так; Я бы просто сделал:

new Thread(function).Start();

Ответ 3

Несмотря на то, что для управления вашими потоками считается лучшей практикой, если вас не интересует результат/состояние этого потока и не нужно разбираться с отменой и т.д., то что вы делаете хорошо.

Стоит подумать, нужен ли вам выделенный поток для того, что вы делаете. Если код, который вы используете, относительно невелик, вы можете рассмотреть возможность использования ThreadPool с помощью TPL или QueueUserWorkItem.