Убить выполнение функции, если длительность превышает заданное - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. У меня происходит выполнение функции над файлом. Иногда файлы приходят битые и выполнение функции над ними по времени выливается в бесконечность. Каким образом мне ограничить выполнение функции по времени? Если выполнение превышает заданное количество времени, похерить все и идти дальше? Спасибо

Решение задачи: «Убить выполнение функции, если длительность превышает заданное»

textual
Листинг программы
  1.            
  2. Application word = new Application();
  3. FileInfo sourceFile;
  4. Microsoft.Office.Interop.Word.Document document;
  5. try
  6. {
  7.       sourceFile = new FileInfo(filepath);
  8.       document = word.Documents.Open(sourceFile.FullName);
  9.       newFileName = sourceFile.FullName.Replace(".doc", ".docx");
  10.       newFileName = sourceFile.FullName.Replace(".rtf", ".docx");
  11.       document.SaveAs2(newFileName, WdSaveFormat.wdFormatXMLDocument,
  12.            CompatibilityMode: WdCompatibilityMode.wdWord2010);
  13.       document.Close(false, false, false);
  14.       word.Quit(false, false, false);
  15.       document = null;
  16.       word = null;
  17.       GC.Collect();
  18.       File.Delete(filepath);
  19.       filepath = newFileName;
  20. }
  21. catch (Exception ex)
  22. {
  23.       stateWord = false;
  24. }
  25. finally
  26. {
  27.       document = null;
  28.       word = null;
  29.       GC.Collect();
  30. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы