
Влад
24.05.2017
05:37:22

Илья
24.05.2017
05:37:38
Йоу

Дмитрий
24.05.2017
05:37:48

Denis
24.05.2017
05:37:53
У нас по инфе в школе джаву проходили (8 класс), тема математические операции. Сделал через отдельный класс, с использованием методов и конструктора. Училка ниче не поняла, сказала "главное что работает" и поставила оценку

Google

Влад
24.05.2017
05:38:15
Лол.
Я кароч афигеваю с этих преподов)
Я канеш тупой.
Но они ещё тупее походу.

Denis
24.05.2017
05:38:59
Единственное что радует, оценка - 12
А одноклассники начали фоткать мою задачу и создавали конструкторы в классе main

Влад
24.05.2017
05:42:53
Окей, а теперь по теме. Как сделать так, чтобы в асинхронном методе в цикле другой метод выполнялся до конца, и уже потом, если надо, ещё раз запускался. А не дважды одновременно.

Denis
24.05.2017
05:44:16
Всмысле дважды одновременно?

Влад
24.05.2017
05:44:37
Ну, у меня так получается.

Ilya
24.05.2017
05:44:54
только не копиппасть сюда
на gist выкладывай

morlord
24.05.2017
05:45:24

Google

Влад
24.05.2017
05:45:27
Что боту, если 2 человека одновременно напишут, приходит 2 сигнала, и он запускает один и тот же метод дважды для двоих разных людей. Но там такие условия, что такого делать нельзя.

Дмитрий
24.05.2017
05:45:56

Лев
24.05.2017
05:46:13
Там есть специальное свойство которое включено в библиотеку TPL, оно отвечает за то, чтобы все потоки ждали, пока не закончит работу один конкретный, поищи (сори, не помню названия)

Ilya
24.05.2017
05:52:03
то что у тебя асинхронный экошон вообще можешь забить. Есть подозрение если ты сделаешь экшон синхронным, проблема у тебя останется

alix
24.05.2017
06:29:54

Му
24.05.2017
06:54:39

alix
24.05.2017
06:56:18
только тред

Му
24.05.2017
06:56:50
судья Тред

Gid
24.05.2017
06:57:12
Там все равно не учат программированию

Ilya
24.05.2017
06:57:30

alix
24.05.2017
06:57:36
слушай маму
мама дело говорит

Му
24.05.2017
07:00:04

Gid
24.05.2017
07:00:26
Алсо там ещё могут за норм код по щщам надавать

Alexander
24.05.2017
07:00:27
в иннополисе вроде немного учат

Gid
24.05.2017
07:00:31
И ещё хуже научить

Му
24.05.2017
07:00:37
лучше иди на какую-нибдуь биологию, программирование изучишь сам, скрестишь с биологией\химией и будешь разрабывать Т вирусы

Google

Gid
24.05.2017
07:00:38

Му
24.05.2017
07:00:55
или иди на математику, скрестишь программирование с ней, напишешь ИИ
или иди на роботехнику, скрестишь с программированием и сделаешь большого робота, который отразит нападение инопланетян

Like
24.05.2017
07:01:42
Не слушай их

Му
24.05.2017
07:01:42
в общем ты понял

Alexander
24.05.2017
07:01:53
иди в гей-шлюхи

Like
24.05.2017
07:01:54
Иди клепать сайтики на wordpress'e

Му
24.05.2017
07:02:05
а если пойдёшь на программирование, будешь писать вебсайты и ботов :)

Like
24.05.2017
07:02:22
Для телеграма)

Malacus
24.05.2017
07:02:29
Почему сразу ботов для телеграма?

Влад
24.05.2017
07:05:41
Вот так. У меня в методе bw_DoWork(...)

Влад
24.05.2017
07:06:40
Там и главный цикл while (true) {...}
Вот там всё месиво происходит.

Му
24.05.2017
07:08:36
я писал на Bot Framework, много удобнее чем в инструкции по ссылке
+ бот получается не только для телеграма
и тестировать можно локально с помощью спецпрограммки

Nikolay
24.05.2017
07:10:49
Ибо в боте важна отзывчивость

Ilya
24.05.2017
07:11:19

Google

Nikolay
24.05.2017
07:12:09
Что это?
Создание контроллера с экшеном на каждое сообщение

Влад
24.05.2017
07:12:24
А там уже я так поиск игры сделал:
user = GetUserByID(message.Chat.Id);
if (message.Text == /startgame)
{
AvailablePlayers.Add(user);
}
Там уже есть цикл, который все проверяет, и создает объект игры:
games.Add(Game.MakeGame(user1, user2);

Ilya
24.05.2017
07:12:44
Но судя по тому что он кинул, там все по другому

Nikolay
24.05.2017
07:13:50

alix
24.05.2017
07:14:22

Влад
24.05.2017
07:14:22
Переписать бота не проблема, но что тогда использовать?

alix
24.05.2017
07:14:24
алло

Admin
ERROR: S client not available

alix
24.05.2017
07:14:29
аспнет мвц

Ilya
24.05.2017
07:14:36

alix
24.05.2017
07:14:46
на каждый реквест фабрика контроллеров создает инстанс

Ilya
24.05.2017
07:15:02
.net лишний оверхкд

Nikolay
24.05.2017
07:15:20
У тебя бот такой большой, что ему нужен MVC?

Влад
24.05.2017
07:15:48
Так можете объяснить, как работает метод bw_DoWork()?
Для каждого юзера отдельно вызывается, или как?

Nikolay
24.05.2017
07:16:37
Уместишь это всё в 300 строк :)

Влад
24.05.2017
07:17:07
Не, мне над на С#.

Ilya
24.05.2017
07:17:34

Google

Роман
24.05.2017
07:17:37

Ilya
24.05.2017
07:17:40
и для этого есть удобные либы
и ничего такого в этом нет чтобы это написать на селфхостед коре
или какой-нибудь ненси эфикс

Влад
24.05.2017
07:18:10

Nikolay
24.05.2017
07:18:21

Ilya
24.05.2017
07:18:49
я не понимаю к чему ты клонишь

Анатолий
24.05.2017
07:18:56
Вы про паттерн или про фреймворк?

Ilya
24.05.2017
07:19:17
его что-то вообще кидает из стороны в сторону немношк

Nikolay
24.05.2017
07:20:29

Aleksander
24.05.2017
07:20:36
на ASP.NET WebAPI боты работают, там оверхеда мало

Nikolay
24.05.2017
07:20:46
Когда ты тыкаешь и ждёшь пару секунд ответа от бота - не камильфо

Ilya
24.05.2017
07:21:09
но могу допустить, что на ГО оно будет быстрее

Aleksander
24.05.2017
07:21:47
больше latency, по моему, добавляет сам botframework (его SAAS часть в Azure - коннекторы и т.п.)
есть еще вариант с Botframework + Azure Functions - тут совсем все просто, даже веб приложения нет :)

Роман
24.05.2017
07:23:48
я бы не сказал, что asp.net mvc прям совсем быстрый, чай не из сокета читать (конвеер обработки запроса не короткий, если что), но у меняотвечает меньше чем за 10мс с учётом сетевых задержек.

Ilya
24.05.2017
07:24:34

Nikolay
24.05.2017
07:26:48
Ещё как вариант сделать на T4 :)
Эта группа больше не существует