Notice: file_put_contents(): Write of 9467 bytes failed with errno=28 No space left on device in /var/www/tgoop/post.php on line 50
C++95@cxx95 P.16
CXX95 Telegram 16
#video

NEED FOR SPEED

Если сравнивать C++ с другими популярными языками (Python, Java, C#, etc.), то адекватно написанные программы на нем будут почти наверняка быстрее аналогичных программ на других языках.

Однако и внутри C++ есть своя сегрегация по скорости.

(1) В стандартных проектах мало кого может удивлять использование std::shared_ptr вместо голых указателей, постоянные аллокации памяти, забытый где-то std::move. Скорее всего, фикс такого это действительно "экономия на спичках" и только будет потом мешать разработке.

(2) В не очень стандартных проектах (браузеры, компиляция) уже немного сходят с ума - используют small vector (часть вектора на стеке), статический полиморфизм (юзают CRTP вместо виртуальных функций), вместо std::string делают непонятно куда указывающие std::string_view и т.д. Это встречали многие.

(3) Но в реалтаймовых программах своя вселенная. Нельзя делать системные вызовы, блокировать поток, использовать алгоритмы сложности > O(1), и еще куча ограничений. Это обработка сигналов, звука, HFT-системы...

Про программы из класса (3) рассказывает Тимур Думлер:
https://youtu.be/8GlwkWxf3hk?t=3504
Использование стандартной библиотеки С++ для обработки сигналов в real-time

Это выступление было мне интересно, как человеку, никогда не сталкивавшимся с такими жесткими рамками 👍



tgoop.com/cxx95/16
Create:
Last Update:

#video

NEED FOR SPEED

Если сравнивать C++ с другими популярными языками (Python, Java, C#, etc.), то адекватно написанные программы на нем будут почти наверняка быстрее аналогичных программ на других языках.

Однако и внутри C++ есть своя сегрегация по скорости.

(1) В стандартных проектах мало кого может удивлять использование std::shared_ptr вместо голых указателей, постоянные аллокации памяти, забытый где-то std::move. Скорее всего, фикс такого это действительно "экономия на спичках" и только будет потом мешать разработке.

(2) В не очень стандартных проектах (браузеры, компиляция) уже немного сходят с ума - используют small vector (часть вектора на стеке), статический полиморфизм (юзают CRTP вместо виртуальных функций), вместо std::string делают непонятно куда указывающие std::string_view и т.д. Это встречали многие.

(3) Но в реалтаймовых программах своя вселенная. Нельзя делать системные вызовы, блокировать поток, использовать алгоритмы сложности > O(1), и еще куча ограничений. Это обработка сигналов, звука, HFT-системы...

Про программы из класса (3) рассказывает Тимур Думлер:
https://youtu.be/8GlwkWxf3hk?t=3504
Использование стандартной библиотеки С++ для обработки сигналов в real-time

Это выступление было мне интересно, как человеку, никогда не сталкивавшимся с такими жесткими рамками 👍

BY C++95


Share with your friend now:
tgoop.com/cxx95/16

View MORE
Open in Telegram


Telegram News

Date: |

Matt Hussey, editorial director at NEAR Protocol also responded to this news with “#meIRL”. Just as you search “Bear Market Screaming” in Telegram, you will see a Pepe frog yelling as the group’s featured image. In handing down the sentence yesterday, deputy judge Peter Hui Shiu-keung of the district court said that even if Ng did not post the messages, he cannot shirk responsibility as the owner and administrator of such a big group for allowing these messages that incite illegal behaviors to exist. With the “Bear Market Screaming Therapy Group,” we’ve now transcended language. Among the requests, the Brazilian electoral Court wanted to know if they could obtain data on the origins of malicious content posted on the platform. According to the TSE, this would enable the authorities to track false content and identify the user responsible for publishing it in the first place. Content is editable within two days of publishing
from us


Telegram C++95
FROM American