Форум программистов, компьютерный форум CyberForum.ru

Сравнение многопоточности С++11 и WinAPI - C++

Восстановить пароль Регистрация
 
san92der
14 / 14 / 3
Регистрация: 27.10.2012
Сообщений: 108
06.06.2013, 02:48     Сравнение многопоточности С++11 и WinAPI #1
У меня скорее теоретический вопрос, чем практический. Есть ли разница работы с многопоточностью в С++11, и, например в WinAPI? Преподаватель в универе долго мне пытался доказать, что WinAPI лучше потому, что он сильнее дружит с архитектурой системы и тому подобное, и поэтому может работать и лучше и менее капризно. Но новый стандарт ведь тоже не глупые люди разрабатывали) Надеюсь, мой вопрос понятен)
з.ы. над удобством/простотой/сложностью написания кода можно не заморачиваться
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11832 / 6811 / 769
Регистрация: 27.09.2012
Сообщений: 16,885
Записей в блоге: 2
Завершенные тесты: 1
06.06.2013, 03:01     Сравнение многопоточности С++11 и WinAPI #2
Цитата Сообщение от san92der Посмотреть сообщение
поэтому может работать и лучше и менее капризно.
Вопрос сможете ли Вы написать лучше, чем группа профессиональных программистов
В конечном итоге все равно все сводится к API системы
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,419
06.06.2013, 03:27     Сравнение многопоточности С++11 и WinAPI #3

Не по теме:

Так и чешется написать про винду головного мозга.


С++11 взял лучшее из буста, который приобрел свою популярность не благодаря пиару и навязыванию технологий. Писать некроссплатформенный код там, где это можно обойти без вреда со стороны функциональности и удобства не комильфо.

Для меня этот вопрос звучит равнозначно:
printf_s круче printf

Ну и конечно все это одна моя большая ИМХА. Тема из разряда холиваров.
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
06.06.2013, 03:38     Сравнение многопоточности С++11 и WinAPI #4
san92der, в любом случае многопоточность С++11 под Win - обёртка над WinAPI.
Добавлено через 1 минуту
И да, WinAPI - это же такая красота, как же от этого отказаться то можно...)

Добавлено через 6 минут
Цитата Сообщение от san92der Посмотреть сообщение
Преподаватель в универе долго мне пытался доказать, что WinAPI лучше потому, что он сильнее дружит с архитектурой системы и тому подобное, и поэтому может работать и лучше и менее капризно
Можно намекнуть ему на переносимость...
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,419
06.06.2013, 03:44     Сравнение многопоточности С++11 и WinAPI #5
gray_fox, к сожалению, для подобных личностей не существует альтернативных ОС, а если и есть, то они кушают сказки про 1% пользователей и для них аргумент кроссплатформенность вообще не аргумент.

P.S. ну разве что если между разными версиями ОС Windows.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
06.06.2013, 04:46     Сравнение многопоточности С++11 и WinAPI #6
Цитата Сообщение от MrGluck Посмотреть сообщение
gray_fox, к сожалению, для подобных личностей не существует альтернативных ОС
Вот не нужно только об "ольтернативных ОС" разводить... Виндоус де-факто лучшая ОС для пользователей ПК. Препод прав насчёт обёртки над АПИ? Прав!

Добавлено через 2 минуты
Цитата Сообщение от MrGluck Посмотреть сообщение
Писать некроссплатформенный код там, где это можно обойти без вреда со стороны функциональности и удобства не комильфо.
Зачем вообще использовать кросплатформенность как аргумент, если работаешь под виндой? Кросплатформенность вычёркиваем, какие ещё достоинства?!
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,419
06.06.2013, 05:00     Сравнение многопоточности С++11 и WinAPI #7
Собственно про что я и говорил постом выше

Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
работаешь под виндой?
Так для развлекушечек. Просто ты не знаешь всей схемы. Передо мной стоит ноут с линем, на котором я пишу большой курсач на PHP, апаче и мускуле, иногда я, дабы расслабиться, захожу на форум потрендеть, пощелкать задачки, посмотреть заказы. Что мешает сидеть и на стационарнике на лине? Банальная лень. У меня давно (с февраля) SSD под линь валяется, времени все нет комп разобрать да вставить. (Просто хочется заодно и все детали повыковыривать от пыли, термопасту поменять и т.д. Все это делается на целый день, но лень)
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
06.06.2013, 09:24     Сравнение многопоточности С++11 и WinAPI #8
У Си++11 и его многопоточности главная фишка в том, что она вообще появилась в языке. До этого работа программ в многопоточной среде не регламентировалась никак.

Кузе: распространённость ОС — это ещё не повод прибивать программы к ней гвоздями, городя кучу костылей, опирающихся на костыли в её API, потому что так легче.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
06.06.2013, 10:55     Сравнение многопоточности С++11 и WinAPI #9
Kuzia domovenok,
Зачем вообще использовать кросплатформенность как аргумент, если работаешь под виндой? Кросплатформенность вычёркиваем, какие ещё достоинства?!
Более понятный, высокоуровневый, интуитивный код в стиле С++ (ведь пишем-то на С++), а не в стиле Си, не является достаточным аргументом?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.06.2013, 11:17     Сравнение многопоточности С++11 и WinAPI
Еще ссылки по теме:

C++ Подскажите литературу о многопоточности!
Синхронизации многопоточности C++
Реализация многопоточности в GUI приложении C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Убежденный
Системный программист
 Аватар для Убежденный
14197 / 6212 / 985
Регистрация: 02.05.2013
Сообщений: 10,348
Завершенные тесты: 1
06.06.2013, 11:17     Сравнение многопоточности С++11 и WinAPI #10
Цитата Сообщение от san92der Посмотреть сообщение
Есть ли разница работы с многопоточностью в С++11, и, например в WinAPI?
Конечно есть !
В Win32 API можно, к примеру, создать именованный объект синхронизации и
раздать разным пользователям разные права на него - кому полные, кому
только на чтение, кому вообще без доступа. Или, например, закинуть в
сокет порцию данных и "пойти гулять", а когда операция будет завершена,
получить уведомление через alertable-I/O или порт завершения ввода-вывода.
И если правильно все сделать, это будет наиболее эффективная для данной
платформы комбинация.

А C++11 обеспечивает лишь подмножество компонентов для работы с
потоками и синхронизацией, понятно, что "родные" возможности ОС будут
наверняка побогаче.

Другое дело, что "голые" интерфейсы Win32 API использовать сложно и опасно,
поэтому все они требуют заключения в соответствующие обертки.
Yandex
Объявления
06.06.2013, 11:17     Сравнение многопоточности С++11 и WinAPI
Ответ Создать тему
Опции темы

Текущее время: 12:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru