Мириады запущенных задач на C#

Комментарии 3

  • 51a5aaad21db730f5d4745894226b165_small.p

    20 августа 2017 в 21:11

    –4

    // Оффтоп
    Хватит, горшочек, не вари! Шарп, родненкий, ну хорошо же жили вместе уже почти два десятка лет, всё у нас получалось, и космические корабли бороздили просторы вселенной, и сервера с клиентами любили друг друга не смотря на разделяющие их моря и океаны. Но то, что щас происходит — за гранью моего восприятия. Я не знаю, сколько часов должно быть в сутках и в рабочей неделе, чтобы успевать вникать/изучать в новые конструкции и приёмы. Особенно учитывая, что среднестатистический программист разве что курьером не дорабатывает в фирме дабы экономить бюджет и всё совсем не загнулось. Или на западе реально в каждом стартапе/фирме получается выбить деньги на гору программистов, которые могут себе позволить быть настолько специализированными, что таки способны изучать и использовать все эти бесконечные навороты?

    • 20 августа 2017 в 22:12

      +3

      Если хочется продвигаться в карьере и расти в з/п — надо постоянно учиться.


      «Пока ты спишь, кто-то качается».

  • 20 августа 2017 в 22:22

    +1

    StackOverflow можно достичь и вполне естественным способом, например, при написании сетевого пинг-понг приложения. C# по умолчанию предлагает вызвать продолжение метода немедленно, если задача уже выполнена. Обычно это полезно, т.к. сокращает накладные расходы, но может привести и к казусам.

    Да, эту проблему можно решить «костылём» в виде `Task.Yield`, а проблему с накладными расходами при переключении контекста — собственным планировщиком. Но просто обойтись без `Task.Yield`, к сожалению, не получится.

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

© Habrahabr.ru