Асинхронный C# сниппет

  • Автор темы Автор темы krevac
  • Дата начала Дата начала

krevac

Client
Регистрация
11.11.2018
Сообщения
64
Реакции
13
Баллы
8
Доброго времени суток!

Подскажите, можно ли как-то сделать, чтобы асинхронно с кодом выполнялся код, который будет отправлять на сервер статистику и не будет зависеть от кубиков, которые выполняются.

Т.е. условно код зависнет на кубике на час, а статистика будет отправляться каждую минуту, спасибо
 
Как то так можно. Но я не уверен что стоит так делать:-)
95922
95923
 
Последнее редактирование:
  • Оценить
Реакции: krevac, volody00 и Sho
Доброго времени суток!

Подскажите, можно ли как-то сделать, чтобы асинхронно с кодом выполнялся код, который будет отправлять на сервер статистику и не будет зависеть от кубиков, которые выполняются.

Т.е. условно код зависнет на кубике на час, а статистика будет отправляться каждую минуту, спасибо
Кажись лучше сделать отдельный проект под отправку каждую минуту и стартовать его из главного проекта.
 
Как то так можно. Но я не уверен что стоит так делать:-)
Спасибо большое, протестирую.
Не совсем понял почему код с позывным "С тормозами" тормозит...
 
Как то так можно. Но я не уверен что стоит так делать:-)
Я так понимаю - тормоза там вылезли из-за таймаута в 333 милисекунды, поставил 30 000 (30 сек) и нагрузки дополнительной не увидел. Посмотрим как будет работать в потоке.

Еще раз большое спасибо
 
Спасибо большое, протестирую.
Не совсем понял почему код с позывным "С тормозами" тормозит...

C#:
Развернуть Свернуть Копировать
            new Thread(new ThreadStart(Method)).Start();

            void Method()
            {
                while (true)
                {
                    //СЮДА КОД КОТОРЫЙ ДОЛЖЕН ВЫПОЛНЯТЬСЯ АСИНХРОННО



                    Thread.Sleep(6000); //СЮДА ПАУЗУ В МС МЕЖДУ ВЫПОЛНЕНИЯМИ
                }
            }
 
Последнее редактирование:
  • Оценить
Реакции: krevac
Спасибо большое, протестирую.
Не совсем понял почему код с позывным "С тормозами" тормозит...
С тормозами - с остановкой кода в конце проекта:)
Код будет выполнятся до тех пор, пока переменная проекта "flag" не будет иметь значение "stop".
Тоесть, на bad end и good end добавляем кубик установить значение переменной flag в stop и когда поток отработал, параллельный код перестанет отрабатывать. В варианте "без тормозов" параллельный код будет работать пока не доработает. Тоесть в постере будет проект уже завершен, а код все равно будет дорабатывать. Поставь Thread.Sleep(1000) и запусти в постере, поймешь о чем я.
 
С тормозами - с остановкой кода в конце проекта:-)
Код будет выполнятся до тех пор, пока переменная проекта "flag" не будет иметь значение "stop".
Тоесть, на bad end и good end добавляем кубик установить значение переменной flag в stop и когда поток отработал, параллельный код перестанет отрабатывать. В варианте "без тормозов" параллельный код будет работать пока не доработает. Тоесть в постере будет проект уже завершен, а код все равно будет дорабатывать. Поставь Thread.Sleep(1000) и запусти в постере, поймешь о чем я.
Идешь на опережение моего вопроса... пошел в good end и bad end добавлять stop :-)
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)