powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Асинхронное программирование под .NET - в чем глубокий смысл?
83 сообщений из 83, показаны все 4 страниц
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611516
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если асинхронные вызовы все равно выполнаются в текущей нитке, в чем глубокий смысл?
Работаю с несколькими чужими веб проектами где везде суют асинхронное исполнение. Накой? Все равно браузеру ждать ответа.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611520
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы не быть голословным, вот например такой метод:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
private static async Task WriteSimpleAttribute(XmlWriter xmlWriter, string name, string value)
{
  await xmlWriter.WriteStartElementAsync(null, "attribute", null);
  await xmlWriter.WriteAttributeStringAsync(null, "name", null, name);
  await xmlWriter.WriteStartElementAsync(null, "attributeValues", null);
  await xmlWriter.WriteStartElementAsync(null, "attributeValue", null);
  await xmlWriter.WriteElementStringAsync(null, "value", null, value);
  await xmlWriter.WriteEndElementAsync();
  await xmlWriter.WriteEndElementAsync();
  await xmlWriter.WriteEndElementAsync();
}


И чё мы выиграли?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611574
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo Kobler, похоже по коду внутри идет работа с I/O.

А ты напиши перформанс-тест для двух вариантов. Асинхронный. И обычный. И сравни.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611576
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo KoblerЕсли асинхронные вызовы все равно выполнаются в текущей нитке, в чем глубокий смысл?

IO операции выполняются в так называемом "IO потоке" (условно), пока они там выполняются, поток освобождается и может выполнять другую работу, т.е. не простаивает, ожидая пока IO операция будет завершена, тем самым отнимая драгоценный ресурс у приложения.

И нет, синхронный код асинхронного метода выполняется не в текущей нитке, а в первом свободном потоке (см. ConfigureAwait, чтобы этим управлять).

Gobzo KoblerРаботаю с несколькими чужими веб проектами где везде суют асинхронное исполнение. Накой? Все равно браузеру ждать ответа.

Мы уже давно перешли на асинхронную модель. Был опыт, когда существующее старенькое приложение под внезапно выросшими высокими нагрузками в качестве эксперимента переделали на асинхронную модель и получили колоссальный выигрыш по производительности, исчезли периодические DOS, без применения техник масштабирования (горизонтального и вертикального) и без хак-тюнинга.

А «Все равно браузеру ждать ответа» это верно, быстрее работа с СУБД или файлами от этого не станет, но драгоценные ресурсы при этом экономятся. Т.е. другими словами, клиенты не ждут, когда освободится поток, который тупо ждёт когда там база данных раздуплится.

Gobzo KoblerИ чё мы выиграли?

В данном случае мы видим, что мы пишем в XmlWriter, но маленькими порциями, это не значит, что все эти операции обязательно будут I/O операциями, данные пишутся в буффер, когда буффер наполнится, он скидывается на диск, и только в этот момент происходит I/O операция, которую не хотелось бы ждать и блокировать поток. Проблема в том, что мы не знаем КОГДА этот буфер наполнится, а управлять буффером вручную не хотелось бы. Поэтому ВСЕ эти маленькие операции должны выполняться с помощью конструкций асинхронного вызова.

Фишка в том, что ты не можешь в методе, который был вызван синхронно (т.е. без await), выполнить асинхронный вызов через await когда тебе вздумается, и чтобы это имело под собой обозначенный профит. Нет, не можешь. Поэтому ВЕСЬ код, который собирается выполнять I/O операции хоть где-то, должен быть async. Конечно, ты можешь в любой момент вернуться с одной из старых моделей для асинхронных вызовов, от чего как раз все уходят. На событиях, делегатах, специальных интерфейсах :)

Модератор: Тема перенесена из форума "Программирование".
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611613
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo Kobler,
Код действительно некрасивый.
Нужно делать асинронным сам объект.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611670
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Код действительно некрасивый.
Нужно делать асинронным сам объект.

Что некрасивого? Можно прокидывать делегат с синхронным кодом внутрь асинхронного, но нафига эти костыли?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611679
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЧто некрасивого?
На каждой строке писать await.
Нужно без этого слова но асинхронно.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611687
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Gobzo Kobler, вчера, 21:42 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21241889] [21241889]
>
>И чё мы выиграли?
В классе с Вашим примером могут существовать методы обработки событий, что дает возможность прервать работу метода Вашего примера, к примеру.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611691
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевмогут
И В синхронном коде можно прерывать метод.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611786
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Нужно без этого слова но асинхронно.

код в студию
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611787
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевВ классе с Вашим примером могут существовать методы обработки событий, что дает возможность прервать работу метода Вашего примера, к примеру.

не могут, не передаётся CancellationToken
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611930
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttPetro123Нужно без этого слова но асинхронно.

код в студию
Он тот же без слов await в каждой строке.
Сам класс xmlWriter внутри накапливает в буфер и другим потоком выполняет.
Т.е. 15 строк пробегут мгновенно.
Больше ничего не надо. Всё внутри xmlWriter.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39611986
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какую-такую "другую работу"? Обрабатывается HTTP запрос, ему нужен XML созданный обработчиками. Что еще он может "делать" пока создается XML по кусочкам?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612014
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo Kobler,
В данном случае ты прав.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612029
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot hVostt]Gobzo KoblerВ данном случае мы видим, что мы пишем в XmlWriter, но маленькими порциями, это не значит, что все эти операции обязательно будут I/O операциями, данные пишутся в буффер, когда буффер наполнится, он скидывается на диск.
Не на диск, а в Response.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612046
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Он тот же без слов await в каждой строке.
Сам класс xmlWriter внутри накапливает в буфер и другим потоком выполняет.
Т.е. 15 строк пробегут мгновенно.
Больше ничего не надо. Всё внутри xmlWriter.

угу, вместо одного, ты два потока сожрёшь. ясно
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612047
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo KoblerКакую-такую "другую работу"? Обрабатывается HTTP запрос, ему нужен XML созданный обработчиками. Что еще он может "делать" пока создается XML по кусочкам?

обрабатывать другие запросы, вот что делать.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612048
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo KoblerНе на диск, а в Response.

запись в респонз тоже можно делать асинхронно, т.е. для того, чтобы скидывать данные из буфера в сеть поток не нужен.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612052
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

ты хочешь сказать что все запросы обрабатываются одним потоком?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612055
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo KoblerhVostt,

ты хочешь сказать что все запросы обрабатываются одним потоком?

все запросы обрабатываются ограниченным набором потоков из пула потоков. основная задача, это заставить имеющиеся потоки выполнять работу, а не проводить время в ожидании IO операций, и уменьшать количество задействованных потоков.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612061
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

понятно, все на подпорках.

https://msdn.microsoft.com/en-us/library/hh191443.aspx Async methods don't require multithreading because an async method doesn't run on its own thread.

а следовательно HttpRequest и XmlWriter, поддержанные "в заду" MemoryStream, все равно в моем примере будут полоть процессор и никакого выигрыша от асинхронности не будет. по моему все таки разрабам надо думать головой, а не тухесом и отличать ожидание ответа накопителя или сетевого адаптера от пересылки байтов из буфера в буфер.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612062
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+под процессором следует понимать одно ядро!
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612067
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttобрабатывать другие запросы, вот что делать.
это забота другого уровня. Причём тут прикладной код?
Веб сервер, если идёт запрос и нет свободного потока запускает новый).
Ты тут со своим кодом причём?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612069
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo Koblerа следовательно HttpRequest и XmlWriter, поддержанные "в заду" MemoryStream, все равно в моем примере будут полоть процессор и никакого выигрыша от асинхронности не будет. по моему все таки разрабам надо думать головой, а не тухесом и отличать ожидание ответа накопителя или сетевого адаптера от пересылки байтов из буфера в буфер.
совершенно верно.
Простота написания await в Net оглупляет народ.
В Java поток создать посложнее, поэтому народ не пишет await направо и налево.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612117
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, вчера, 13:15 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21243092] [21243092]
>не могут,...
Если ...async Task... есть метод UserControl, то Вы считаете, что нельзя удалить uc, вызвав Children.Remove(uc) в обработчике Click?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612131
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,

Это здесь безотносительно. Устраивай споры в собственной ветке.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612253
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo Kobler,

у тебя есть тачка, ты на ней возишь дрова и из них делают скворчник. Ты можешь на одно тачке привозить дрова одному мастреу, ждать пока он собрет скворечник и везти его обратно. Ты можешь купить кучу тачек и куча таджиков будет бегать к разным мастерам и ждать пока им соберут скворечники. Или ты можешь юзать одну тачку, привозить на ней дрова, а пока мастер собирает скворечник, чтоб тачка не простаивала, ты можешь везти дрова к другому мастеру, или забирать готовый скворечник от какого то мастера. Итого тачка одна, а работы выполняет много.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612259
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gobzo Koblerа следовательно HttpRequest и XmlWriter, поддержанные "в заду" MemoryStream, все равно в моем примере будут полоть процессор и никакого выигрыша от асинхронности не будет. по моему все таки разрабам надо думать головой, а не тухесом и отличать ожидание ответа накопителя или сетевого адаптера от пересылки байтов из буфера в буфер.

выигрыш от асинхронности может быть только при наличии асинхронных операций в программном потоке. если их нет, то выигрыша не будет, будут скорее просадки.

следовательно, XmlWriter у вас никуда не пишет чтоли? нет асинхронных операций там? фейк и финт ушами с мемористрим?

думать головой надо, с этим сложно не согласиться. только мало говорить о том, что надо думать головой. надо ещё и думать головой :)
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612260
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123это забота другого уровня. Причём тут прикладной код?
Веб сервер, если идёт запрос и нет свободного потока запускает новый).
Ты тут со своим кодом причём?

при том, что ты не понимаешь о чём речь. может пойдёшь и почитаешь? )
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612263
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевЕсли ...async Task... есть метод UserControl, то Вы считаете, что нельзя удалить uc, вызвав Children.Remove(uc) в обработчике Click?

и каким образом процесс прервётся?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612280
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, сегодня, 15:22 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21245010][21245010]
>и каким образом процесс прервётся?
Не будет объекта с методом - некому будет выполнять работу.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612290
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевНе будет объекта с методом - некому будет выполнять работу.

Судя по всему, в вашей реальности, если бросить камень с окна, и отвернутся, то уже никакого камня нет, и он никуда не летит
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612307
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttпри том, что ты не понимаешь о чём речь. может пойдёшь и почитаешь? )
ну дак и ты не врубаешься)
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612308
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttвыигрыш от асинхронности может быть только при наличии асинхронных операций в программном потоке. если их нет, то выигрыша не будет, будут скорее просадки
именно. Тут АСИНХРОННЫЕ ОПЕРАЦИИ НЕ НУЖНЫ.
Поэтому выигрыша не будет.
hVosttXmlWriter у вас никуда не пишет чтоли? нет асинхронных операций там?
там есть. А снаружи нет и не нужно.
Инкапсуляция ООП.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612309
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,
тебе сказали, в другую ветку.
Прерывание операции не имеет отношения к асинхронности.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612312
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.,
XmlWriter - это мастер.
Ты в коде
xmlWriter.Write
возишь ему дрова и сваливаешь у его ног.
Остальное он сам асинхронно выпускает скворечники.
Это дело сервера.
Твоё дело дрова подвозить.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612317
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут кейс неудачный. Вот если-б было 2 DAO. И мы ожидаем отклика от обоих что данные значить
агрегировать и отдать на UI. Тогда и польза была-б очевидна. Наподобие Callable/Future в Java.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612319
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123ну дак и ты не врубаешься)

во что, в твои фантазии? ))


Petro123именно. Тут АСИНХРОННЫЕ ОПЕРАЦИИ НЕ НУЖНЫ.
Поэтому выигрыша не будет.

Petro123там есть. А снаружи нет и не нужно.
Инкапсуляция ООП.

не имеет значения на сколько глубоко «внутри» там асинхронная операция. если она есть, весь код всех вызовов должен быть асинхронным.

давай не тупи.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612322
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonТут кейс неудачный. Вот если-б было 2 DAO. И мы ожидаем отклика от обоих что данные значить
агрегировать и отдать на UI. Тогда и польза была-б очевидна. Наподобие Callable/Future в Java.

нормальный кейс. при чём тут дао. при чём тут количество дао. одно, два, пицот -- не имеет ровно никакого значения. абсолютно никакого в контексте вопроса переиспользования потоков.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612324
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonТут кейс неудачный. Вот если-б было 2 DAO. И мы ожидаем отклика от обоих что данные значить
агрегировать и отдать на UI. Тогда и польза была-б очевидна. Наподобие Callable/Future в Java.
разумеется. Тут в оперативке пишется в буфер строки на входе.
И кто то пытается обосновать асинхронность по куску кода
Код: c#
1.
2.
3.
4.
private static async Task WriteSimpleAttribute(XmlWriter xmlWriter, string name, string value)
{
  await xmlWriter.WriteStartElementAsync(null, "attribute", null);
  await xmlWriter.WriteAttributeStringAsync(null, "name", null, name);


смешно.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612326
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttне имеет значения на сколько глубоко «внутри» там асинхронная операция. если она есть, весь код всех вызовов должен быть асинхронным.
Может на пальцах дойдёт?
Тебе ТС сказал что Ослик ждёт ответа, к примеру 0,2 сек.
За это время твой код должен сформировать XML и отдать в выходной поток.
Тут не нужна асинхронность).
Или ты XML клеишь за пол часа?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612327
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttв контексте вопроса переиспользования потоков.
заставь дурака богу молиться.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612347
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Petro123, сегодня, 18:50 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21245173][21245173]
>тебе сказали, в другую ветку. Прерывание операции не имеет отношения к асинхронности.

А если подумать?
Формулировка вопроса - Если асинхронные вызовы все равно выполнаются в текущей нитке, в чем глубокий смысл?
А в том, что асинхронные вызовы не блокируют обработку других оконных сообщений методами этого же объекта и ветке этой же нитки. Это касается и обработки сообщений от клавиатуры и мышки. А что конкретно будет делать метод обработки сообщения - зависит от программиста. В частности - можно и удалить объект.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612352
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевА если подумать?
Вот ты же сам асинхронного ничего не писал.
Возьмём десктоп:
- тут требуется асинхронность?
Код: c#
1.
string s = Объект.ПолучитьРезультатПоHTTP_с_сайта("mail.ru");


?
- а тут требуется:

Код: c#
1.
string s = Объект.ПолучитьРезультатXMLдокуент("<?xml version="1.0"?><catalog>   <book id="bk101">      <author>Gambardella, Matthew</author>   </book></catalog>  ")


?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612356
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Может на пальцах дойдёт?
Тебе ТС сказал что Ослик ждёт ответа, к примеру 0,2 сек.
За это время твой код должен сформировать XML и отдать в выходной поток.
Тут не нужна асинхронность).
Или ты XML клеишь за пол часа?

хотел было ответить на глупость, но..

Petro123заставь дурака богу молиться.

ты сам себе ответил. долбись лбом об стену дальше )
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612358
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевФормулировка вопроса - Если асинхронные вызовы все равно выполнаются в текущей нитке, в чем глубокий смысл?

пля... день дураков. ну не хотите читать доку, задавайте дальше глупые наивные вопросы.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612360
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttты сам себе ответил. долбись лбом об стену дальше )
дык зачем приходил? Иди дальше).
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612389
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Petro123, вчера, 21:51 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21245390][21245390]
>Вот ты же сам асинхронного ничего не писал.
Что за щенячье поведение - всё куснуть норовит. Мы же обсуждали здесь особенности поведения async...await.
У меня все операции (SELECT, INSERT, KLON, UPDATE, DELETE) с базой данных идут асинхронно:
. . .
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
      //-- Готовим параметры запроса
      asp = new OracleParameter[2];
      asp[0] = new OracleParameter("cur_viborka", OracleDbType.Cursor, ParameterDirection.Output);

      string xstr = tbx_РегионыВД.Text.Trim();
      xstr = (string.IsNullOrEmpty(xstr)) ? null : xstr + "%";
      asp[1] = new OracleParameter("x_name_reg", xstr);

      lst_Entity = null;
      lst_Entity = new List<row_Entity>();

      при.tmrStart();   //-- запуск прогрессбара
      await Task.Run(() => wsp.Entity_SP("NCUYAO_GIS.RegVD_Sel", wsp.sp_Sel, asp, RowToEntity));
      if (wsp.wspErr != null) {
        при.tmrStop();
        MessageBox.Show(wsp.wspErr, caption_Entity, MessageBoxButton.OK);
        гп.bl_Разрешение = true;     //-- Разрешение выполнения функционала компонент
        return;
      }
      //-- Покажем выборку
      при.tmrStop();  //-- останов прогрессбара

. . .
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612407
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев
Код: c#
1.
2.
3.
4.
5.
6.
7.
await Task.Run(() => wsp.Entity_SP("NCUYAO_GIS.RegVD_Sel", wsp.sp_Sel, asp, RowToEntity));
      if (wsp.wspErr != null) {
        при.tmrStop();
        MessageBox.Show(wsp.wspErr, caption_Entity, MessageBoxButton.OK);
        гп.bl_Разрешение = true;     //-- Разрешение выполнения функционала компонент
        return;
      }



**ТЬ, это НЕ АСИНХРОННО. это засрать ещё +1 поток, вы чё издеваетесь? за это время можно было уже 2 языка программирования выучить, дом построить, детей вырастить. а вы всё простую концепцию осилить не можете.

может смените профиль? ну не ваше, ну не даётся математика 2+2 вам.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612408
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,

то, что вы делаете, а это запуск параллельного потока с ожиданием в потоке, делается с помощью BackgroundWorker, за каким хреном вы сюда тащите async/await, если вы не эвейтите IO операции, а тупейшим образом создаёте ожидание в отдельном потоке.

нахера? вы еще сколько лет собираетесь этот говнокод постить сюда? я уже не первый раз его вижу.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612436
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисееввсё куснуть норовит
это мужской форум и программист мужская (в основном))) профессия.
Не надо в ответ на вопрос 21245390 постить свои простыни как доказательство крутости.
Удачи!
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612465
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, сегодня, 03:01 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21245573] [21245573]
>**ТЬ, это НЕ АСИНХРОННО...
Господи, дай терпения.
Асинхронность в информатике .
В компьютерном программировании, асинхронные событиями являются те, которые возникают независимо от основного потока выполнения программы. Асинхронные действия — действия, выполненные в неблокирующем режиме, что позволяет основному потоку программы продолжить обработку.

Синхронные и асинхронные операции
Многие приложения вызывают методы асинхронно, поскольку это позволяет приложению продолжать выполнение других операций, пока осуществляется вызов метода.

Поэтому, право не стоит выдавать ваш бред за знания. Способ реализации асинхронности не важен.

>может смените профиль? ну не ваше, ну не даётся математика 2+2 вам.
В этом профиле более 45 лет, да и математика мне ближе эта - e^ix=cos(x)+isin(x), хотя 2+2 также важно.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612484
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, сегодня, 03:08 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21245575][21245575]
>то, что вы делаете,... тупейшим образом создаёте ожидание в отдельном потоке.
Вы чего то не понимаете или не хотите понять. Да мне нужно реализовать ожидание, но не останавливая UI поток в методе. Мне нужно, чтобы работали и другие обработчики событий в других методах объекта класса этого же потока(UI).
Я привел реализацию доступа к базе данных Oracle. Провайдер не реализовал истинную async...await. Пришлось сделать самому.
У Microsoft - полная реализация:
. . .
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
      //-- Готовим параметр запроса
      string xstr = tbx_Запрос.Text.Trim();
      if (xstr != "") xstr += "%";
      SqlParameter[] asp = new SqlParameter[2] {
        new SqlParameter("@pk_Entity", pk_Guid),
        new SqlParameter("@str_Отдел", xstr)
      };

      lst_Entity = null;
      lst_Entity = new List<row_Entity>();

      при.tmrStart();  //-- запуск прогрессбара
      try { await wsp.Entity_SP("au_Отделы_Sel", wsp.sp_Sel, asp, RowToEntity); }
      catch (System.InvalidOperationException ex) { }
      catch (Exception ex) {
        при.tmrStop();
        MessageBox.Show(ex.Message, caption_Entity, MessageBoxButton.OK);
        гп.bl_Разрешение = true;     //-- Разрешение выполнения функционала компонент
        return;
      }

      //-- Покажем выборку
      при.tmrStop();  //-- останов прогрессбара

. . .

>нахера?
Не надо быть идиотом - код дает больше информации, чем вся ваша болтовня. Этим мне и нравиться подход Microsoft - на каждый чих - фрагмент кода
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612489
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев, а мы можем в данном обсуждении убрать UI за скобки?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612493
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Petro123, сегодня, 09:37 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21245657][21245657]
>это мужской форум...
Динамит был мужиком, да ещё каким, но частенько приговаривал Кресту - скромнее надо быть, скромнее
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612505
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевВ этом профиле более 45 лет
Вот такой же как ты:
Создание и сопровождение сайта на чистом HTML. Серьезно?
В третий раз выложи сюда портянки с хранимками.
Ты проект свой переделал на веб?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612582
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевВ компьютерном программировании, асинхронные событиями являются те, которые возникают независимо от основного потока выполнения программы. Асинхронные действия — действия, выполненные в неблокирующем режиме, что позволяет основному потоку программы продолжить обработку.

У вас с головой всё хорошо? Вы может откроете начало топика и почитаете, что обсуждение идёт про async/await, а не про способы неблокирования единственного UI потока.

То, что вы делаете это через задницу, это просто была сказано для справки. Ваш говнокод сюда ни к селу, ни к городу. Речь идёт об экономии потоков, вы же решается совершенно другую задачу, и ваше решение полностью противоречит задаче и нарушает её.


ВМоисеевПоэтому, право не стоит выдавать ваш бред за знания. Способ реализации асинхронности не важен.

Идиотизм по ходу не лечится.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612585
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевВы чего то не понимаете или не хотите понять. Да мне нужно реализовать ожидание, но не останавливая UI поток в методе.

Вы должны использовать BackgroundWorker, и это ни разу не ожидание. Чего у вас там UI поток ожидает? Вы мозга включите, хотя бы на секунду, ну для пофилактики, если вам думать головой больно, ну потерпите уж чуток. А то не поймёте нихрена.

Async/await нужен только в случае, если операция у вас IO-асинхронная. Если это не так, то вы не получите никаких выгод, только проигрыш.

И пожалуйста, прекратите постить свой говнокод. УЖе давно можно было 10 раз всё улучшить, с таким количеством времени и рекомендаций, тут люди вам по доброте душевной помочь всё пытались, но всё пустоту.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612623
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, сегодня, 15:13 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246074][21246074]
>У вас с головой всё хорошо?...
Я отвечаю на ваш возглас **ТЬ, это НЕ АСИНХРОННО...
И сую ваш нос в определение асинхронности, кстати, не мной данное.

>Ваш говнокод сюда ни к селу, ни к городу...
М-да.
1. Качество апельсина никак не зависит от количества свиней, его охающего.
2. Мне нужна асинхронность при выполнении запросов к базе данных. Провайдер Oracle этого не дает - приходится реализовывать асинхронность за счет другого потока. Провайдер Microsoft это делает, и код запроса несколько иной. Но суть одна - запрос к базе данных идет асинхронно и дает возможность обработку потоком UI других событий.
3. Мой вариант кода доступа к базе данных достаточно "вылизан", реализует базовую функциональность - подготовка параметров запроса, выполнение запроса обращением к хранимой процедуре, отражение строки выборки на объект класса Entity, обработку ошибок и сравнительно компактен и быстр.
4. Async/await нужен только в случае, если операция у вас IO-асинхронная ...
Вы ошибаетесь .
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612654
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевПровайдер Oracle этого не дает - приходится реализовывать асинхронность за счет другого потока.

Ну это действительно правда.

ВМоисеев1. Качество апельсина никак не зависит от количества свиней, его охающего.

Вы так говорите, как будто мне не наплевать. Нравится вам ваш говнокод? Устраивает результат вашего работодателя/заказчика/команду? Да без проблем. Он от этого не перестаёт быть говнокодом. Попытки защищать его в режиме «не доросли вы ещё до моей музыки» -- курам на смех.

Речь о том, что вы услышали звон, да не знаете где он, и суёте свой никчёмный код во все дыры.
Зачем?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612655
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев3. Мой вариант кода доступа к базе данных достаточно "вылизан", реализует базовую функциональность - подготовка параметров запроса, выполнение запроса обращением к хранимой процедуре, отражение строки выборки на объект класса Entity, обработку ошибок и сравнительно компактен и быстр.

В вашем коде нахрен не упал async/await, зачем вы его туда сунули, не понятно.

В любом случае, это к обсуждению в данном топике совершенно не относится.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612682
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, сегодня, 18:20 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246249] [21246249]
>В вашем коде нахрен не упал async/await, зачем вы его туда сунули, не понятно.
Я же приводил ссылку , чукча вы наш. Прочтите внимательно материал хотя бы подзаголовка Потоки. Мне нужна асинхронность, иначе не работает прогрессбар.

>В любом случае, это к обсуждению в данном топике совершенно не относится.
Странно.
ТС пишет:
Если асинхронные вызовы все равно выполнаются в текущей нитке, в чем глубокий смысл?... Все равно браузеру ждать ответа.

Я стараюсь донести, - async/await реализуют асинхронность, что дает возможность обработки других событий объекта в других методах этого же объекта. Мне нужно, например, чтобы работал таймер, а другие могут обработать не штатную ситуацию (подвисание потока в методе).
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612684
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевЯ же приводил ссылку , чукча вы наш. Прочтите внимательно материал хотя бы подзаголовка Потоки. Мне нужна асинхронность, иначе не работает прогрессбар.

Мало приводить ссылку, надо прежде почитать материал. Вы его не читали. А если читали, то видимо не хватает ума, чтобы осилить материал.

Вы уже со своим прогрессбаром всех здесь откровенно достали. При чём лезете с ним в ветки, которые совсем о другом.


ВМоисеевЯ стараюсь донести, - async/await реализуют асинхронность, что дает возможность обработки других событий объекта в других методах этого же объекта. Мне нужно, например, чтобы работал таймер, а другие могут обработать не штатную ситуацию (подвисание потока в методе).

Всё что вы делаете, это в очередной раз смачно позоритесь. Хоть бы почитали материалы по ссылкам, которые приводите, почитали другие материалы, недостатка нет.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612687
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевМне нужна асинхронность, иначе не работает прогрессбар.

В этой фразе сконцентрировано всё ваше скудоумие. Не обижайтесь, но вы даже сами не понимаете, какую бредятину несёте. Прогрессбары с 2005-года в винформсах делали без Task-ов и асинхронности. Прошло 13 лет, а некоторые всё с деревьев не слезут и прыгают на любую блестяшку как тупые аборигены. Ну играйтесь себе, только молча, не надо транслировать свой фетишь.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612698
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, сегодня, 21:01 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246427] [21246427]
>...Не обижайтесь, но ...Прогрессбары с 2005-года...
На УО не обижаются.
Прогрессбар - это пример, как можно использовать асинхронность IO (случай Microsoft) или асинхронность цифромолки (случай Oracle).
Меня не интересует, как делали прогрессбары в 2005. Делал их в 70-х и на ассемблере.
Мне нужно, чтобы таймер работал по моей схеме
. . .
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    //-- Показ ожидания в ProgressBar-е
    private void dpt_Tick(object sender, EventArgs e) {
      iPgbFrm++;
      if (iPgbFrm < 2) return; //-- Ожидание менее 3 секунд ещё комфортно
      if (iPgbFrm == 2) { //-- С 3-ей секунды ожидания покажем ProgressBar
        pgbWin.Visibility = Visibility.Visible;
        pgbWin.Value = iPgbFrm;
        return;
      }
      pgbWin.Value = iPgbFrm % гп.tm_Запрос + 1;
    }
    public void tmrStart() { pgbWin.Value = 1; iPgbFrm=0; dpt.Start();  }
    public void tmrStop() { dpt.Stop();  pgbWin.Visibility = Visibility.Hidden;  }    

. . .
и запрос не блокировал его работу.

Хотя ТС это по барабану.
Ему нужно знать, что async/await реализуют асинхронность. А как этим воспользоваться - его дело.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612703
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевХотя ТС это по барабану.
Ему нужно знать, что async/await реализуют асинхронность. А как этим воспользоваться - его дело.

Да всем по барабану на твой говнокод. Осилил таймер, ну нобелевка, не меньше.


ВМоисеевПрогрессбар - это пример, как можно использовать асинхронность IO (случай Microsoft) или асинхронность цифромолки (случай Oracle).

Ну и нахрен он тут упал этот твой галимый пример в этой ветке?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612717
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,
авторДелал их в 70-х и на ассемблере.
авторМне нужно,
Не загрязняй ветку.

Модератор: Сбавьте градус дискуссии, а то закрою топик.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612734
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>hVostt, вчера, 22:19 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246487] [21246487]
>Да всем по барабану на твой говнокод...
Для математика очевидно, - конечное количество не играет роли, качественные изменения наступают только при переходе к пределу.
Да и ссылаться на якобы оценку людей, не видевших объект оценки, право не стоит.
В своё время пели большие артисты - Зураб Соткилава и Фрэнк Синатра. Право, глупо говорить, что голос Зураба - о-го-го, а Фрэнка - говно, или наоборот, особенно, если не слышал ни того ни другого.
В нашем деле многое решает практическая проверка принятой схемы (подхода). Я переписал всю ГИС под эту схему доступа к базе данных Oracle (async/await). Пока полет нормальный.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612736
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,

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

А то что Вы считаете и её и свой код нормальным, мы давно уже поняли.
Правда не припомни ни одного участника форума, кто бы с этим согласился.
Но мы же тут все, как Вы намекнули, рабы догматов
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612750
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевЯ переписал всю ГИС под эту схему доступа к базе данных Oracle (async/await). Пока полет нормальный.работайте дальше.
Вы вошли в ветку с вопросом про отмены в коде?
Изучите токен отмены (hVostt).
И поймёте, возможно, что это не по теме топика.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612771
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>skyANA, сегодня, 09:58 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246761][21246761]
>...Правда не припомни ни одного участника форума, кто бы с этим согласился...
Ещё один проснулся. Зачем вы вообще поднимаете этот вопрос в этом топике?
Да, похоже, никто не согласился. Но также, не один толком и внятно не объяснил, почему код доступа к базе данных плох. Да, он другой и не удовлетворяет критериям лампы, ну и что? Не согласие, как форма лени - никто и не пытался кодо понять. Правда, мы не определились, о чем собственно идет речь. Или все апельсины плохи?
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612774
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Petro123, сегодня, 12:15 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246819] [21246819]
>...Вы вошли в ветку с вопросом про отмены в коде?...
С какого перепуга. Не входил я с этим вопросом. ТС спросил, я попытался ответить, что может быть видима и кнопка "П...ц". Если есть асинхронность, то она работает, невзирая но подвисающий поток в приведенном методе. Что он сделает, при обработке щелчка мышки, его дело. Может быть смоделирует "CNRL-ALT-DEL", и тогда плевать, какие там потоки в работе и что они делают
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612777
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев>skyANA, сегодня, 09:58 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246761][21246761]
>...Правда не припомни ни одного участника форума, кто бы с этим согласился...
Ещё один проснулся. Зачем вы вообще поднимаете этот вопрос в этом топике?
Да, похоже, никто не согласился. Но также, не один толком и внятно не объяснил, почему код доступа к базе данных плох. Да, он другой и не удовлетворяет критериям лампы, ну и что?
А Вы пытались хоть кого-то понять? Нет. Вас же устраивает и ладно.
Какие-либо критерии качества кода, принятые в отрасли, Вас не интересуют.
Вы их обозвали догмами, а нас их рабами. Теперь вот появились свиньи и апельсины.

Да фиг с Вами, живите себе в своём мирке наедине со своим творением.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612795
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевДля математика очевидно, - конечное количество не играет роли, качественные изменения наступают только при переходе к пределу.
Да и ссылаться на якобы оценку людей, не видевших объект оценки, право не стоит.
В своё время пели большие артисты - Зураб Соткилава и Фрэнк Синатра. Право, глупо говорить, что голос Зураба - о-го-го, а Фрэнка - говно, или наоборот, особенно, если не слышал ни того ни другого.
В нашем деле многое решает практическая проверка принятой схемы (подхода). Я переписал всю ГИС под эту схему доступа к базе данных Oracle (async/await). Пока полет нормальный.

Демагог обыкновенный.. Сколько их тут..
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612804
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>skyANA, сегодня, 14:14 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21246904] [21246904]
>А Вы пытались хоть кого-то понять?...
Странно. Вы просмотрите по "диагонали" хотя бы, к примеру, это .
А проблема то оказалась в том, что провайдер подсовывает не асинхронный код, а муляж - нет у него асинхронности.

>Теперь вот появились свиньи и апельсины.
Сиё появилось в ответ на говно.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612806
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,

послушайте, у Вас есть свои топики про Ваш проект.
Там уже обсудили Ваш код вдоль и поперёк. Лично я даже приводил примеры как бы я сам написал, и они Вам кстати понравились.
Вы в итоге и свой код немного переписали, но до конца так и не поняли сути претензий к нему.

И вот Вас просят не постить его в другие места, потому что он плохой. Вам нормальный, но для других он плохой.
И как Вы нас после этого не назовите, мы не изменим данного мнения, а код Ваш не станет лучше
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612808
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,

а все эти Ваши проблемы с ProgressBar решены ещё 15 лет назад, во времена версии 1.1.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612821
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>skyANA, сегодня, 16:36 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21247009] [21247009]
>послушайте, у Вас есть свои топики про Ваш проект.
Послушайте, да дался Вам мой код. Один из Вашей стаи заподозрил, что я не применяю async/await. В ответ привел пример. Дальнейшее раздутие на совести Вашей стаи.
По сути дела, мне глубоко наплевать, считаете ли Вы мой код хорошим, или плохим. Я Вам не мешаю программить как Вы хотите, не обзываю Вас говном, не мешайте и мне творить, как я хочу. Разумные советы принимаю с благодарностью.
Повторяю, глубоко признателен и Вам и hVostt за помощь и наставления в предыдущих топиках.

>а все эти Ваши проблемы с ProgressBar решены ещё 15 лет назад, во времена версии 1.1.
Как, дайте ссылку.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612827
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев,

ну да, конечно на совести нашей стаи... а то, что до Вас доходит не сразу ( 21057299 , 21047202 ) тоже наша вина?
Ведь ясно же, что Вы пишете свой код методом тыка: "О, вот так вроде работает как мне надо и нормально", - открываете для себя удивительные проблемы, вместо того, чтобы книжки почитать, примеры посмотреть.

Дать Вам ссылку?
Извините, но поищите-ка сами. Мне когда надо было разобраться, я сделал это самостоятельно.
А хранить ссылки на тот случай, что они кому-то понадобятся через 15 лет, не имею привычки.

И говном я Вас не обзывал. Это Вы имеете привычку обзывать людей рабами, свиньями. Я стараюсь критиковать исключительно код.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612857
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>skyANA, сегодня, 18:46 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1287138&msg=21247107] [21247107]
>... а то, что до Вас доходит не сразу (21057299, 21047202) тоже наша вина?...
Легко быть самым умным, когда тебе подсказали ответ, я об этом . Но в том топике refreg много чего говорил, смотри сначала, да и представители Вашей стаи не отставали. И потом, я не бог и не гений, - обыкновенный инженер, а по сему, иногда доходит с большим трудом, но я учусь - дорогу осилит идущий.
Здесь совсем не понимаю о чем идёт речь.

>Дать Вам ссылку?
Нас в универе учили строго, если ссылаешься, то изволь - ВИЛ,Полное сочинение, Издательство, том, страница, абзац.
А Вы - обыкновенное сотрясение воздуха, чихание так сказать.

>...Я стараюсь критиковать исключительно код...
Как можно критиковать апельсин, запрещая его пробовать (показывать). Здесь мой код работы с хранимыми процедурами, Вы называете его говнокодом, но он работает и с ним удобно работать, так что я остаюсь при своём.

Если сочтёте нужным - ответьте, да и закончим.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612859
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевиногда доходит с большим трудом, но я учусь - дорогу осилит идущий.
Изучайте токен отмены. Я его за пол дня внедрил в проект и пошел дальше.
ВМоисеевда и закончим.отлично).
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612898
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевда и представители Вашей стаи не отставали

послушайте, если в вашем свинарнике принято так выражаться, попрошу в дальнейшем вести дискуссию в таком ключе со своими друганами «свиньями» у себя в ауле.

вы в конец охренели что-ли?


ВМоисеевА Вы - обыкновенное сотрясение воздуха, чихание так сказать.

мало того, что жёстко оффтопите, постоянно тупите, ведёте себя как быдловатый ушлый клоун, ещё и имеете наглость оскорблять без причины уважаемых участников форума, которые в своё личное время помогают, советую, делятся информацией с людьми.
...
Рейтинг: 0 / 0
Асинхронное программирование под .NET - в чем глубокий смысл?
    #39612899
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеевРазумные советы принимаю с благодарностью.

совет уйти со своим говно-кодом из этого топика, который совершенно не относится к обсуждаемому вопросу, вам как надо было передать? по почте или голубями? или как, чтобы до вас дошло?
...
Рейтинг: 0 / 0
83 сообщений из 83, показаны все 4 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Асинхронное программирование под .NET - в чем глубокий смысл?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]