Size: a a a

var chat = new Chat();

2020 June 26

JS

John Stellmann in var chat = new Chat();
источник

R

RA-TA-TATA in var chat = new Chat();
John Stellmann
protected virtual bool IsFileLocked(FileInfo file)
{
   try
   {
       using(FileStream stream = file.Open(FileMode.Open, FileAccess.Read, FileShare.None))
       {
           stream.Close();
       }
   }
   catch (IOException)
   {
       //the file is unavailable because it is:
       //still being written to
       //or being processed by another thread
       //or does not exist (has already been processed)
       return true;
   }

   //file is not locked
   return false;
}
ну ок, у тебя закончится чтение, что ты будешь делать далее? Задача там стоит, ВЫВЕСТИ результат для человека, кто ожидает файл, который уже читают
источник

JS

John Stellmann in var chat = new Chat();
Ожидание можно через https://github.com/App-vNext/Polly
источник

JS

John Stellmann in var chat = new Chat();
RA-TA-TATA
ну ок, у тебя закончится чтение, что ты будешь делать далее? Задача там стоит, ВЫВЕСТИ результат для человека, кто ожидает файл, который уже читают
Ретрай полиси
источник

R

RA-TA-TATA in var chat = new Chat();
John Stellmann
Ретрай полиси
Ты будешь пытаться читать по кд?
источник

JS

John Stellmann in var chat = new Chat();
что такое кд?
источник

R

RA-TA-TATA in var chat = new Chat();
В задаче написано, Не перечитывать файл
источник

R

RA-TA-TATA in var chat = new Chat();
John Stellmann
что такое кд?
постоянно
источник

JS

John Stellmann in var chat = new Chat();
ManualResetEvent
источник

R

RA-TA-TATA in var chat = new Chat();
John Stellmann
ManualResetEvent
ну я что-то подобное думал, в отдельном потоке запускать и ждать сигнала
источник

JS

John Stellmann in var chat = new Chat();
звпускаешь остальные потоки когда вызывающий прочитал
источник

JS

John Stellmann in var chat = new Chat();
RA-TA-TATA
ну я что-то подобное думал, в отдельном потоке запускать и ждать сигнала
на тестовое задание похоже ))
источник

JS

John Stellmann in var chat = new Chat();
после собеса скажешь как надо было:)
источник

R

RA-TA-TATA in var chat = new Chat();
John Stellmann
на тестовое задание похоже ))
оно и есть, встретил на hh, стало интересно
источник

R

RA-TA-TATA in var chat = new Chat();
John Stellmann
после собеса скажешь как надо было:)
Да я не иду на собес %)
источник

R

RA-TA-TATA in var chat = new Chat();
Просто интересно стало, как сделать
источник

YM

Yury Morozov in var chat = new Chat();
Ну как бы я бы сделал инмемори кэш
источник

YM

Yury Morozov in var chat = new Chat();
если начал читать - кладу value null
источник

YM

Yury Morozov in var chat = new Chat();
соответственно жду пока станет не null
источник

YM

Yury Morozov in var chat = new Chat();
и возвращаю
источник