private static object syncLock = new object();
lock (syncLock)
{
if (!IsSent())
{
SendEmails();
}
}
Treba da se samo jednom pozove funkcija SendEmails(), od strane bilo kog thread-a.
Ono što mi treba je da ako je neko ušao u syncLock, da svi posle ne čekaju da se syncLock odključa, nego da preskoče čitav syncLock.
Problem je u tome što ako se SendEmails() funkcija dugo izvršava onda onaj koji čeka na syncLock-u dobije time out exception, a zapravo nema ni potrebe da čeka.