Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
SiemarglТы на машине то ездишь? Я не отвечаю на наводящие вопросы. Если есть что спросить спрашивайте прямо, без лирических отступлений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 00:05 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, А я не спрашиваю. Я говорю что РТ есть там, где ты не видишь. И не должен видеть ) Так что отрицать его необходимость - глупо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 00:11 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
dbpatchно потом это просто надоедает и хочется сотворить что-то действительно значимое. Просто ради фана.Ну так сотвори, что мешает? Судя по всему, ты пока не творил для фана :) Но обязательно сотвори, и ты обнаружишь одну удивительную штуку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 05:13 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White OwlТы же не забыл итоговую цель? Показать что ту-же самую задачу с исключениями решать проще, элегантнее, короче, и тп чем с кодами возврата. Пока это не было продемонстрировано. не элегантнее, а вообще не невозможно по другому. я же писал, как на ноль делить будем с кодами возврата? как память по невалидому указателю будем читать? как выходы за границы массива контролировать будем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 06:20 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White OwlMasterZivОдно только спрошу: на ноль как делить будем, какой код возврата проверять будем, или может быть аргументы проверять будем ? Как вообще ?Как вообще? Да элементарно! Проверим делитель перед арифметикой и будем иметь возможность либо просто задать результат в одну из констант (ноль или бесконечность, смотря что нужно по логике расчетов) или выругаемся юзеру на экран, мол дай правильное значение для делителя. Все очень просто: я, зная что вот тут могут быть проблемы, изначально пытаюсь их минимизировать. А ты, привыкнув к подходу: "проблема? Потом поймаем", борешься со следствием проблемы. Мы в итоге просто по разному мыслим. ну, кодик напиши с исключениями и с кодами возврата и сравни, чтобы вычислялась какая-то вменяемая реальная формула с делением. я найду пример потом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 06:23 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White Owl MasterZivТак что в принципе даже обсуждать тут нечего. Исключения были, есть и будут, и вредны они для отрасли или полезны, были ли они ошибкой или не были, -- спорить бессмысленно. Они были, есть и будут, и с ними нужно уметь жить и работать.Аварийные ситуации были есть и будут... Но так ли уж надо их еще и вручную создавать? если вы подумаете, а не будете жить в парадигме, что кто то когда-то ошибся и все пошло не так, то поймёте ви конце концов, что это все одно и то же. Исключение - это и есть аварийная ситуация и способ ее обработки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 06:27 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Siemargliv_an_ruпропущено...Не уверен, что эти метрики в готовом виде существуют, проще взять и посчитать для конкрекных инстанциаций SSTL-Евских темплетов с конкретным RT-friendly аллокатором (какой-нибудь любимый TLSF и т.п.) и прочими подробностями. Особенно не уверен про время, так как дёрганье из кэша и дёргание из основной памяти без префетча --- запросто почти на два порядка разные времена. Смысл не в скорости, а в детерминированности. Пусть даже 1с на 1мил элементов, но гарантированно. Меня больше стек и память волнуют. В скорости большой запас на текущем железе (а реально РТ надо укладываться кроме спец.задач в 50-100мс), а вот если крешнется по памяти, будет опа.Ну я потому и пишу TLSF как пример, что с ним хорошо оценивать гарантированные поедания памяти и времена. С другой стороны, на практике интересует оценка поточнее, чем "длина бороды Мафусаила", поэтому смотрят и на средние времена плюс сколько-то сигм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 08:26 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
iv_an_ruSiemarglпропущено... Смысл не в скорости, а в детерминированности. Пусть даже 1с на 1мил элементов, но гарантированно. Меня больше стек и память волнуют. В скорости большой запас на текущем железе (а реально РТ надо укладываться кроме спец.задач в 50-100мс), а вот если крешнется по памяти, будет опа.Ну я потому и пишу TLSF как пример, что с ним хорошо оценивать гарантированные поедания памяти и времена. С другой стороны, на практике интересует оценка поточнее, чем "длина бороды Мафусаила", поэтому смотрят и на средние времена плюс сколько-то сигм.Это только верх айсберга - позволит использовать malloc в С-RT приложениях, но не в С++. Вопрос - сколько malloc'ов (new) и стека например в std::sort ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 09:22 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Как я посмотрю - здесь каждый первый разрабатывает реалтаймсистемы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 09:24 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
ИзопропилКак я посмотрю - здесь каждый первый разрабатывает реалтаймсистемыТак понимаешь, если ресурсов валом, то берется наждачка покрупнее, я например беру С# (да и ту сломал 20592132 ). А когда у тебя какая то серверная хрень с сотнями процессов (для чего и применяют Схх), то она хоть и не РТ, но с ростом все больше и больше начинает по требованиям ее напоминать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 10:24 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
[quot SiemarglТак понимаешь, если ресурсов валом, то берется наждачка покрупнее, я например беру С# (да и ту сломал 20592132 ). А когда у тебя какая то серверная хрень с сотнями процессов (для чего и применяют Схх), то она хоть и не РТ, но с ростом все больше и больше начинает по требованиям ее напоминать...[/quot] В том же C# просадка по ресурсам вполне предсказуема, нормально оценивается. Никакой проблемы писать под C# "серверную хрень с сотнями процессов" нет, просто нужно аккуратнее управлять ресурсами. На том же ASP пишутся большие сайты с немаленькой нагрузкой. Суть реалтайма не в повышенной нагрузке, а в гарантированном времени отклика. Естественно, что это распространяется только на управляющие контуры, а интерфейсную часть можно писать на С, C++, Java, C#, Python - не проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 11:27 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
SiemarglА я не спрашиваю. Я говорю что РТ есть там, где ты не видишь. И не должен видеть ) Так что отрицать его необходимость - глупо. Чего вдруг нельзя отрицать. То что где-то применяется какая-то фича, не значит что в этом была необходимость. Может просто разраб - идиот )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 12:17 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Siemargliv_an_ruпропущено... Ну я потому и пишу TLSF как пример, что с ним хорошо оценивать гарантированные поедания памяти и времена. С другой стороны, на практике интересует оценка поточнее, чем "длина бороды Мафусаила", поэтому смотрят и на средние времена плюс сколько-то сигм.Это только верх айсберга - позволит использовать malloc в С-RT приложениях, но не в С++. Вопрос - сколько malloc'ов (new) и стека например в std::sort ?Кто вам запрещает в плюсах отнаследовать от std:alloc обёртку над TLSF ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 12:38 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
iv_an_ruSiemarglпропущено... Это только верх айсберга - позволит использовать malloc в С-RT приложениях, но не в С++. Вопрос - сколько malloc'ов (new) и стека например в std::sort ?Кто вам запрещает в плюсах отнаследовать от std:alloc обёртку над TLSF ?А дальше что? Мониторить сколь раз вызывается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 12:57 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Siemargliv_an_ruпропущено... Кто вам запрещает в плюсах отнаследовать от std:alloc обёртку над TLSF ?А дальше что? Мониторить сколь раз вызывается?Ну, если вы не знаете, утекает у вас память или нет, то мониторить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 14:52 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
CEMbdbpatchно потом это просто надоедает и хочется сотворить что-то действительно значимое. Просто ради фана.Ну так сотвори, что мешает? Судя по всему, ты пока не творил для фана :) Но обязательно сотвори, и ты обнаружишь одну удивительную штуку. какую штуку? что твое творение никому не нужно и не интересно, кроме тебя? я эту стадию прошел, в смысле вышел из этого замкнутого круга. в совсем широкие массы это не идет ибо пока еще инкубатор, есть пара фундаментально пока неразрешимых проблем, а примененные компромисы не убедительны (вопрос про динамически расширяемые строки/буферы - непрерывные массивы байт, в условиях запрета на realloc/malloc/free - в смысле они расширяются через повторный mmap, но для мелких строк это не приемлимо и со стековыми строками тоже вопрос) почему запрет на realloc - потому что старый указатель должен быть валиден, вернее участок памяти под ним должен быть адресуем до общего конца жизненного цикла вызова впрочем, если ты не в теме проблематики то это все лишь белый шум ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 15:11 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
iv_an_ruSiemarglпропущено... А дальше что? Мониторить сколь раз вызывается?Ну, если вы не знаете, утекает у вас память или нет, то мониторить. подобное уже написано до вас :) https://msdn.microsoft.com/en-us/library/x98tx3cf.aspx а если серьезно - то в любом проекте свои обертки над malloc/free - я думал это просто must have уже с третьего дня старта проекта, а оказывается находятся те, кто и вопросы задает, зачем это нужно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 15:15 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
ИзопропилКак я посмотрю - здесь каждый первый разрабатывает реалтаймсистемы применять принципы RT можно выборочно. оно знаешь - довольно просто сделать код тормозным - просто пиши себе как обычно это делают и не парься. а вот написать коровую часть хорошо, чтоб потом последователи имели запас прочности - это обязательное правило, если не хочешь, чтоб твой проект поставили на списание/переписывание уже через полгода после релиза. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 15:17 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
iv_an_ruSiemarglпропущено... А дальше что? Мониторить сколь раз вызывается?Ну, если вы не знаете, утекает у вас память или нет, то мониторить. Речь не об утечке памяти, ну откуда вы вообще эту тему взяли??? Исходный вопрос 20657004 Речь о гарантии того, что ваше приложение поместится в XXX Кб оперативки и в YYY Кб стека. При любых условиях. И о предварительной оценке XXX/YYY по исходному набору данных, если используется STL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 15:26 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Siemargliv_an_ruпропущено... Ну, если вы не знаете, утекает у вас память или нет, то мониторить. Речь не об утечке памяти, ну откуда вы вообще эту тему взяли??? Исходный вопрос 20657004 Речь о гарантии того, что ваше приложение поместится в XXX Кб оперативки и в YYY Кб стека. При любых условиях. И о предварительной оценке XXX/YYY по исходному набору данных, если используется STL.Для гарантии не надо мониторить, для гарантии надо считать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 17:52 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
egorychWhite Owl, >>Ну так поменяй. написать быстренько, на форуме, объектную библиотеку для работы с ODBC? мило)Зачем библиотеку??? Для демонстрации решения одной маленькой задачи, ты хочешь писать библиотеку??? И после этого ты еще продолжаешь утверждать что с твоими любимыми исключениями код получается проще и элегантнее?! У тебя совесть есть? egorych Я надеюсь только, что это библиотечный код, и ты его не пишешь для каждого запроса в приложении.Зря надеешься. Это реальный код в прикладной программе. Вызовы к SQL* функциям - это вызовы библиотеки (прямое обращение к ODBC функциям), а как я эти функции вызываю и как с ними работаю - я только что показал. Тебе этот код не нравится? Ну так почему ты не покажешь аналогичный код который тебе нравится? Неужели я слишком многого прошу? Просто покажи свой элегантный код и все. MasterZiv, Anatoly Moskovsky, а вы? Вы тоже частенько заявляете что код с исключениями проще и лучше. Можете сделать простой и элегантный аналог на исключениях для кода показанного в 20655972 ? Или так-же как egorych сольетесь? Вы же с базами данных работаете ежедневно и наверняка решали проблему пропуска rowcout резалтсетов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 18:35 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White Owl, print_odbc_error(SQL_HANDLE_STMT, TRUE); процесс завершает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 18:38 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
ИзопропилWhite Owl, print_odbc_error(SQL_HANDLE_STMT, TRUE); процесс завершает?Да. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 18:41 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White OwlMasterZiv, Anatoly Moskovsky, а вы? Вы тоже частенько заявляете что код с исключениями проще и лучше. Можете сделать простой и элегантный аналог на исключениях для кода показанного в 20655972 ? Или так-же как egorych сольетесь? Вы же с базами данных работаете ежедневно и наверняка решали проблему пропуска rowcout резалтсетов? OK, напишу, чуть позже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 19:35 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White OwlMasterZiv, Anatoly Moskovsky, а вы? Вы тоже частенько заявляете что код с исключениями проще и лучше. Можете сделать простой и элегантный аналог на исключениях для кода показанного в 20655972 ? Прошу. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. Краткое пояснение. 1) Отделено логирование SQL_SUCCESS_WITH_INFO от прикладного кода, которое там нафиг не нужно. 2) Фатальные ошибки приводят к аварийному завершению функции, а не приложения. И в вызывающей функции принимается решение что делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2017, 20:29 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39491984&tid=1340092]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
177ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
| others: | 291ms |
| total: | 585ms |

| 0 / 0 |
