Решения 2:
1) Делать проверку в subproccess, а не в основном потоке, и сделать callback, если файлик появился. Это общее решение.
2) Воспользоваться
https://pypi.python.org/pypi/watchdog или в том же subproccess или в threading. При порождении нового процесса сложнее обмениваться сообщениями, надо делать какой-то общий спейс. В тредами - удобнее, но там не приходится говорить о "честных" тредах.