Используйте самую простую вещь, которая будет работать. Похоже, вариант 1 - это путь, основанный на информации, которую вы дали.
Вариант 2 имеет потоки, потоки всегда усложняют программы, более трудны для отладки и записи, больше вероятность ошибок.
Вариант 3 будет означать, что у вас есть два приложения, и если вы внесете изменение, вам придется развернуть новые версии обоих, что увеличит затраты на обслуживание.