co_await c++20

Тема в разделе "LANGS.C", создана пользователем superakira, 13 мар 2018.

Статус темы:
Закрыта.
  1. im.

    im. Active Member

    Публикаций:
    0
    Регистрация:
    16 сен 2017
    Сообщения:
    310
    _DEN_,
    я компилю с запуском не по-умолчанию, а чистый std::launch::async, создается 512 тредов, которые отрабатывая указанное время освобождаются и дают работать другим.
    если поставить 1 секунду вместо 100 миллисекунд, то все так же работает, просто ждать дольше, для видео это будет долго.
    разумеется GCC работает по другому, std::launch::async генерит exception.
    в принципе и не удивительно, компилер от MS генерит наиболее стабильный код, в то время как GCC любит напихать гибкости и рантайма сложно контролируемого в процессе работы.
    во-во, а еще они тут co_await'ы рисуют, хоть бы сделали рабочим придуманное ими ранее :))

    В плюсах мне понравилось появление std::thread, std::async, std::shared_ptr, std:unique_ptr и другие рабочие фичи, свободная функция std::move.
    Все это должно было быть в плюсах с самого их рождения.
     
  2. CurryHowardIsomorphism

    CurryHowardIsomorphism Member

    Публикаций:
    0
    Регистрация:
    13 май 2017
    Сообщения:
    97
    Отсюда и вопрос (не только у меня) про нужность таких штук, которые почти полностью состоят из implementation defined поведения.
     
  3. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Да не, ващет как раз микрософтовский компиллер отличается и всегда отличался своим вольнодумством :)
     
  4. superakira

    superakira Guest

    Публикаций:
    0
    gcc vs ms compiler - это старый холивар. в том плане что рантайм всегда чуть по разному бобрил ( + - конечно), например shared_mutex - на том же гцц было несколько версий, так что... чуть что сложнее хэлло ворлда сразу надо быть начеку)
     
  5. im.

    im. Active Member

    Публикаций:
    0
    Регистрация:
    16 сен 2017
    Сообщения:
    310
    в gcc хелловорлд весит сотни килобайт под винду, я думаю это не конкурент ms, а нечто отдельное самобытное.
     
  6. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    > удаляйте мой ак с форума вместе с месагами

    Ничего против не имею, данный персонаж бесполезен, а главное не вполне адекватен. Но следует дать некоторое время на осмысление или отход от веществ. Думаю даже что удаление не приемлемо, так как в данный момент ресурсы переживают не лучшее время. Думаю что следует обсуждать всё рационально и не обижаться, помните что истина нам не доступна :)
     
  7. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Эти проблемы уже лет 20 никого не волнуют.
     
    Mikl___ нравится это.
  8. Minzdrav

    Minzdrav Well-Known Member

    Публикаций:
    0
    Регистрация:
    21 мар 2017
    Сообщения:
    1.082
    Виндовс - плохая операционная система.
     
  9. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    Minzdrav,

    Поставьте линукс, ну что бы вернуться на винь :sarcastic:

    _DEN_,

    На самом деле волнуют, столь толстый рантайм содержит в себе кучи ошибок. Такие апп потенциальные дыры в безопасности.
     
  10. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    А десятки мегабайт системных DLL, без которых приложение не запустится, не подпадают эту категорию? :derisive:
     
  11. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    _DEN_,

    Нет, оно десятилетиями вылезано. Ручной поиск ошибок в системном коде просто невозможен. Его стабильность невероятна, впрочем не удивительно - столь долго он фиксился.
     
  12. unc1e

    unc1e Active Member

    Публикаций:
    2
    Регистрация:
    28 июл 2017
    Сообщения:
    287
    Indy_, товарищ termosintez на дифе нашел все же
     
  13. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    unc1e,

    Что именно нашёл ?

    Я кучу времени потратил на поиск ошибок в тени, пришёл к выводу что это просто невозможно. Эти ошибки находят иначе, два лишь варинта. Либо анализ фиксов, разработка уже закрытых ошибок, либо поиск в сети крэшдампов и их разработка. Только вторым путём и находятся ошибки. Ядро слишком стабильное, чтобы листая дизасм найти ошибки. Это никто сделать не может, для этого нужна очень сложная автоматика - солверы. Задача на данный момент не разрешима.
     
  14. unc1e

    unc1e Active Member

    Публикаций:
    2
    Регистрация:
    28 июл 2017
    Сообщения:
    287
  15. CurryHowardIsomorphism

    CurryHowardIsomorphism Member

    Публикаций:
    0
    Регистрация:
    13 май 2017
    Сообщения:
    97
    unc1e, тебя не смущает тег #bsod?
     
  16. superakira

    superakira Guest

    Публикаций:
    0
    _DEN_, я вот двачую за рантайм. по факту все все равно начинают колхозить свой (строки, контейнеры итд), что просто смешно, везде свой колхозный миниртл везде. зачем он нужен, если есть штатный - не понятно.
     
  17. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    superakira, именно. Отказываются юзать Boost и STL, изобретают велосипеды на мешанине из плоского C и C++98, а потом то им finally подавай, то вообще C++ говно :meeting:
     
  18. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    Очевидно, потому что "стандартный" не устраивает? Поведение кода должно быть предсказуемым. А когда поведение кода спрятано под 10-этажным слоем метакода, любой здравомыслящий разработчик задастся вопросом: в случае возникновения проблемы сколько времени уйдёт на перелопачивание всего этого метакода и поиск источника проблемы? А нужно ли мне это вообще? Меньше магии - меньше проблем, проще код сопровождать.
     
  19. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    SadKo, вот хорошая статья про изобретение велосипедов на примере Boost.Asio: http://www.crazygaze.com/blog/2016/03/04/boost-asio-thread-safety-and-reinventing-the-wheel/

    Цитата отлично подходит для любых собственных велосипедов.
     
  20. superakira

    superakira Guest

    Публикаций:
    0
    SadKo, дада именно поэтому каждый начинает колхозить strlen, memcmp итд.
    std::string - что тут например может тебя напрячь?
    std::vector|map - ?

    Много тут из вас в "метакоде" копались? Думаю, что нет. Единственное могу сказать что помню на вс2013 багу с потоками std::thread, но как бы это не так чтобы часто.

    А теперь представьте проект с недокументированым колхозным рантаймом, который тупо не отлажен итд.
     
Статус темы:
Закрыта.