|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRosВ моем куске кода запускаются потоки и я их отслеживаю каждого и вижу что они делают. В бакгроунде у меня запускается воркер (этого для UI достаточно), а он генерирует параллельные потоки загрузки данных. Это всё крайне занимательно, но при чём тут асинк? ViPRosОни между прочим тоже из пула, потому по умолчанию бакгроунд. Ну нет же.. ээх.. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:09 |
|
C# async... await
|
|||
---|---|---|---|
#18+
refregПочему идет отход от контекста? Вопрос был сформулирован четко: "Почему код не работает?" Вот и давайте ответим почему код не работает. И что надо сделать, что бы заработал. Я дал ссылку, но ТС толи не осилил, толи просто не стал читать.. refregВкусовщина. А я считаю что дополнительная обязанность (восстановление контекста), должна прописываться явно , А по-умолчанию, отключена Как же я ненавижу слово «вкусовщина», у меня иногда такое ощущение складывается, что некоторые программеры считают, что они на показе мод. Вот здесь в рюшечку, здесь в цветочек. Какая ещё вкусовщина, вы чего вообще? Что касается восстановление контекста, если хорошенько погуглить, можно найти развёрнутые пояснение к такому дизайну и на стеке и в блогах майкрософт. И там вряд ли вы найдёте хоть один намёк на «вкусовщину». Даже у профессиональных дизайнеров «фломастеры» считается грязным ругательством, а тут повсеместно.. ну как так-то? )) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:14 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRosВ моем куске кода запускаются потоки и я их отслеживаю каждого и вижу что они делают. В бакгроунде у меня запускается воркер (этого для UI достаточно), а он генерирует параллельные потоки загрузки данных. Это всё крайне занимательно, но при чём тут асинк? ViPRosОни между прочим тоже из пула, потому по умолчанию бакгроунд. Ну нет же.. ээх.. я не знаю при чем тут асинк, он меня не волнует ни грамма ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:16 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVostt, Тебе ответили за 2 минуты))) LOL ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:20 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRosя не знаю при чем тут асинк, он меня не волнует ни грамма потому что ты педалишь потоки и синкаешься с UI. и это всё на одного единственного пользователя. прям да... ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:29 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRosОни между прочим тоже из пула, потому по умолчанию бакгроунд. Ну нет же.. ээх.. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:36 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRosя не знаю при чем тут асинк, он меня не волнует ни грамма потому что ты педалишь потоки и синкаешься с UI. и это всё на одного единственного пользователя. прям да... ))) Да при чем тут пользователь? С UI работает BGWorker, но он запускает еще кучу потоков своих для загрузки данных и они все независимо (АСИНХРОННО) друг от друга работают, а синхронизируются только через примитивы синхронизации ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:42 |
|
C# async... await
|
|||
---|---|---|---|
#18+
>Petro123, сегодня, 19:58 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1280515&msg=21056185] [21056185] >Кто тебе сказал?... Посмотри хотя бы здесь ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:43 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRos, про картинку.. параллельная экзекуция это коненчо хорошо, но ты действуешь как слоняра в посудной лавке, танком стрижёшь газоны. хотя это всё не так заметно на фоне одного жирного пользователя-единоличника. а теперь давай поговорим про сервер, обрабатывающий запросы, логику и всё-всё остальное тысяч и десятков тысяч пользователей. нужно как минимум по потоку на каждого пользователя. а учитывая твои аппетиты, то по 10 потоков. а это положит на лопатки сервак, моментально уйдёт в DOS. что делать? ставить их в ожидание? пусть ждут своей очереди, за каким-то экраном, и пусть неудачники падают с таймаутом )) казалось бы, при чём тут асинки.... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:54 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRosДа при чем тут пользователь? С UI работает BGWorker, но он запускает еще кучу потоков своих для загрузки данных и они все независимо (АСИНХРОННО) друг от друга работают, а синхронизируются только через примитивы синхронизации ты до сих пор не понимаешь концепцию асинхронности, и не воспринимаешь поток, как очень значимый ресурсоёмкий объект, у которого кроме синхронизации, обеспечивающих безопасность твоих данных, ещё есть и много чего другого. код, написанный полностью на async-ах позволяет очень здорово экономить на потоках, а не плодить их и раскидываться, словно это мусор. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:59 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRos, про картинку.. параллельная экзекуция это коненчо хорошо, но ты действуешь как слоняра в посудной лавке, танком стрижёшь газоны. хотя это всё не так заметно на фоне одного жирного пользователя-единоличника. а теперь давай поговорим про сервер, обрабатывающий запросы, логику и всё-всё остальное тысяч и десятков тысяч пользователей. нужно как минимум по потоку на каждого пользователя. а учитывая твои аппетиты, то по 10 потоков. а это положит на лопатки сервак, моментально уйдёт в DOS. что делать? ставить их в ожидание? пусть ждут своей очереди, за каким-то экраном, и пусть неудачники падают с таймаутом )) казалось бы, при чём тут асинки.... да мне то это пофиг??? У меня клиент сервер - на стороне клиента то что видишь, а на стороне сервера - транзакции. Или ты предлагаешь мне транзакции переписать? Тогда нах мне СКЛ сервер? Если для тебя основная фича асинк в том, что бы все работали последовательно в одном контексте:):):), то я не завидую твоим клиентам. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 20:59 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRosДа при чем тут пользователь? С UI работает BGWorker, но он запускает еще кучу потоков своих для загрузки данных и они все независимо (АСИНХРОННО) друг от друга работают, а синхронизируются только через примитивы синхронизации ты до сих пор не понимаешь концепцию асинхронности, и не воспринимаешь поток, как очень значимый ресурсоёмкий объект, у которого кроме синхронизации, обеспечивающих безопасность твоих данных, ещё есть и много чего другого. код, написанный полностью на async-ах позволяет очень здорово экономить на потоках, а не плодить их и раскидываться, словно это мусор. Да ничего они не экономят, если в лействительности нет ожидания ввода-вывода. Уж лучше было бы явно ввести потоки ввода/вывода и закончить эту вакханалию сакральными играми - "а в каком потоке этот асинхронный код будет выполняться". ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:01 |
|
C# async... await
|
|||
---|---|---|---|
#18+
И у меня не потоки, а таски. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:02 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRosда мне то это пофиг??? а не должно быть. ViPRosУ меня клиент сервер - на стороне клиента то что видишь, а на стороне сервера - транзакции. ну нет же.. что ты рассказываешь. где работа выполняется? разбросана по всем клиентам густым жирным слоем. зачем тебе потоки? скажешь, генерить формочки? ну не смеши.. ViPRosИли ты предлагаешь мне транзакции переписать? Тогда нах мне СКЛ сервер? ну двух-звенка заведомо ущербная и тянет только на очень простейшие ПК, какие-нибудь АРМ-ы там с однобитной логикой, завязанной целиком и полностью на хранимках. ViPRosЕсли для тебя основная фича асинк в том, что бы все работали последовательно в одном контексте:):):), то я не завидую твоим клиентам. асинк позволяет даже дохлому серверу пахать за десятерых, ну и это правильный подход в целом. хоть и не забесплатно. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:05 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttасинк позволяет даже дохлому серверу пахать за десятерых, ну и это правильный подход в целом. хоть и не забесплатно. дармовщины нет нигде смотри как node.js загибается если обработка этих асинков на том же сервере ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:08 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ВМоисеев>Petro123, сегодня, 19:58 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1280515&msg=21056185] [21056185] >Кто тебе сказал?... Посмотри хотя бы здесь я тебе вопросы задал, а ты мне ссылкой на вопрос. Если туго с памятью, то: - без строки в хранимке работает? - меню работает? Тормозит-морозится интерфейс? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:09 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRosДа ничего они не экономят, если в лействительности нет ожидания ввода-вывода. ну а что там ещё может быть??? ты там факториалы чтоли считаешь? или пережёвываешь гигабайты данных в ОЗУ? тогда действительно вопрос, нахрена тебе скул ))))) ViPRosУж лучше было бы явно ввести потоки ввода/вывода и закончить эту вакханалию сакральными играми - "а в каком потоке этот асинхронный код будет выполняться". так и ввели очень давно, есть абстракция I/O потоков ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:10 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRosИ у меня не потоки, а таски. у тебя явный TPL, так что пофиг во что ты обернул задачу, ты плодишь потоки и ловишь все прелести синхронизации, в том числе с контекстом синхронизации и UI потоком ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:11 |
|
C# async... await
|
|||
---|---|---|---|
#18+
ViPRosсмотри как node.js загибается если обработка этих асинков на том же сервере как загибается? отлично справляется с тысячами запросов в одно рыло ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:11 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRosДа ничего они не экономят, если в лействительности нет ожидания ввода-вывода. ну а что там ещё может быть??? ты там факториалы чтоли считаешь? или пережёвываешь гигабайты данных в ОЗУ? тогда действительно вопрос, нахрена тебе скул ))))) ViPRosУж лучше было бы явно ввести потоки ввода/вывода и закончить эту вакханалию сакральными играми - "а в каком потоке этот асинхронный код будет выполняться". так и ввели очень давно, есть абстракция I/O потоков Да я еще хуже считаю - я считаю NP полную задачу построения оптимального расписания. Надо явно что бы можно было назначить поток для обслуживания задач ввода/вывода. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:20 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRosсмотри как node.js загибается если обработка этих асинков на том же сервере как загибается? отлично справляется с тысячами запросов в одно рыло у меня много другой информации. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:21 |
|
C# async... await
|
|||
---|---|---|---|
#18+
hVosttViPRosИ у меня не потоки, а таски. у тебя явный TPL, так что пофиг во что ты обернул задачу, ты плодишь потоки и ловишь все прелести синхронизации, в том числе с контекстом синхронизации и UI потоком да, блин, синхронизация все равно нужна, есть неразделяемые объекты. В ДатаТейбл, допустим, фиг два потока запишут одновременно. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:23 |
|
C# async... await
|
|||
---|---|---|---|
#18+
TPL именно для этого и сделан. А вот если сделан был бы внутри ТПЛ автоматически не плодить потоки, если какой то поток ушел в I|O то было бы хорошо, но нифига такого нету. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2017, 21:24 |
|
|
start [/forum/topic.php?fid=20&msg=39574636&tid=1399554]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 150ms |
0 / 0 |