мы недавно добавили новую функцию в наше программное обеспечение - предварительное создание для документов, которые загружаются и хранятся на сервере. Мы сделали это следующим образом:
Проблема, с которой я столкнулся сейчас, заключается в следующем: новый код для создания превью использует некоторый наш старый код, и иногда он "замораживает" процессы Word или Excel. Генерация предварительных остановок и все последующие превью остаются в режиме ожидания, пока я не убью процессы Word, Excel (мы проверяем предварительный просмотр документов MS Office). После того как я убью процессы, процесс предварительного просмотра продолжается.
Я думал о внедрении таймеров в нашу службу, так что если услуга ожидает более 1 минуты после начала создания предварительного просмотра, она должна убить процесс и продолжить генерировать предварительные просмотры для других документов.
Основная проблема, с которой я сталкиваюсь, заключается в том, что я не могу "переместить" призывы к нашему устаревшему коду для разделения процессов, как это было сделано с другими документами (например, мы реализовали генерацию файла .ps с помощью GhostScript через Process'es).
Любые идеи о том, как "обрабатывать" призывы к устаревшему коду?
Можете ли вы сделать второй процесс, который является сторожевым псом в первом процессе?
Или вы можете сделать первый процесс автоматического перезапуска и иметь второй поток таймера, который его контролирует, а затем убивает свой собственный процесс?