Неориентированы на многопотоковое исполнение статические методы в классах с фоновым кодом ASP.NET?

private bool _isSelected = false;
private void textBox_Validated(object sender, EventArgs e)
{
    _isSelected = false;
}

private void textBox_MouseClick(object sender, MouseEventArgs e)
{
    SelectAllText(textBox);
}

private void textBox_Enter(object sender, EventArgs e)
{
    SelectAllText(textBox);
}

private void SelectAllText(TextBox text)
{
    if (!_isSelected)
    {
        _isSelected = true;
        textBox.SelectAll();
    }
}
6
задан abatishchev 8 December 2009 в 11:44
поделиться

2 ответа

Да, вы можете использовать статические члены - они потокобезопасны. Каждый поток будет выполняться в отдельном контексте, и поэтому любые объекты, созданные внутри статического метода, будут принадлежать только этому потоку.

Вам нужно беспокоиться только о том, обращается ли статический метод к статическому полю, например списку. Но в вашем примере код определенно является потокобезопасным.

8
ответ дан 9 December 2019 в 22:35
поделиться

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

2
ответ дан 9 December 2019 в 22:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: