CSHARP_INTERVIEW_LIB Telegram 859
Что делает lock(obj) под капотом и почему плохая идея — блокировать this или строку?

Компилятор разворачивает в try { Monitor.Enter(obj); } finally { Monitor.Exit(obj); }, монитор реентерабелен и висит на объекте. Блокировка this/публичных объектов/строк опасна: внешний код может их тоже залочить (строки интернируются) → риск дедлоков и лишнего контеншна.

Библиотека собеса по С#
🥰1



tgoop.com/csharp_interview_lib/859
Create:
Last Update:

Что делает lock(obj) под капотом и почему плохая идея — блокировать this или строку?

Компилятор разворачивает в try { Monitor.Enter(obj); } finally { Monitor.Exit(obj); }, монитор реентерабелен и висит на объекте. Блокировка this/публичных объектов/строк опасна: внешний код может их тоже залочить (строки интернируются) → риск дедлоков и лишнего контеншна.

Библиотека собеса по С#

BY Библиотека собеса по C# | вопросы с собеседований


Share with your friend now:
tgoop.com/csharp_interview_lib/859

View MORE
Open in Telegram


Telegram News

Date: |

Unlimited number of subscribers per channel Select “New Channel” Some Telegram Channels content management tips In the next window, choose the type of your channel. If you want your channel to be public, you need to develop a link for it. In the screenshot below, it’s ”/catmarketing.” If your selected link is unavailable, you’ll need to suggest another option. Matt Hussey, editorial director at NEAR Protocol also responded to this news with “#meIRL”. Just as you search “Bear Market Screaming” in Telegram, you will see a Pepe frog yelling as the group’s featured image.
from us


Telegram Библиотека собеса по C# | вопросы с собеседований
FROM American