Что это и как использовать?
Мне нужно это, поскольку у меня есть таймер, который вставляет в БД каждую секунду, и у меня есть общий ресурс между обработчиком таймера и основным потоком. Я хочу гарантировать, что если обработчик таймера занимает более одной секунды при вставке, ожидаемые потоки должны выполняться по порядку. Это пример кода для моего обработчика таймера
private void InsertBasicVaraibles(object param)
{
try
{
DataTablesMutex.WaitOne();//mutex for my shared resources
//insert into DB
}
catch (Exception ex)
{
//Handle
}
finally
{
DataTablesMutex.ReleaseMutex();
}
}
Но в настоящее время мьютекс не гарантирует никакого заказа. После того, как я задал подробный вопрос, ответа нет.