История изменений
Исправление
rtvd,
(текущая версия)
:
такое порно и на яве пишут все кому не лень. со своими стюардессами. только написаное плохо на С++ - ещё можно запустить. а на яве оно даже не взлетает. потому и неизвестно.
На Java оно не известно, потому что его нет. А нет его, потому что эти убогие костыли там не нужны в принципе. :)
Но откуда тебе об этом знать? Ты ведь Java не осилил.
синхронизация, асинхронные потоки и потоки вообще были прилично улучшены в C++11, который сейчас и используется.
Улучшены? Не много ли опечаток в фразе «впервые реализованы»? До C++11 в C++ вообще не было ничего стандартного касательно потоков. Поэтому народ и клепал свои поделия вроде boost или пользовался posix threads, где это было возможно.
проблемы убогих кодеров - исключительно их собственные.
Несомненно, ты - кодер не убогий. :) Даже страшно подумать, что ты там такое писал на C++11, что заткнёт за пояс нормальный код на Java.
Вот тебе простая задача.
Есть поток, который должен выполнить задачу за минимальное время. Он оперирует некоторой кучкой объёктов. В процессе работы ему иногда нужно нужно скидывать сообщения в лог. Сообщения нужно отформатировать, причём длина отформатированных сообщений изначально не известна, в них может быть как просто текст, так и числа (целые и дробные), списки объектов, и т.д. Конечно же, время события тоже должно быть точным.
Пример сообщения:
2013-10-10 11:22:33.567123456 The system detected a Foo event while being in state Bar and keeping track of the folowing Widgets: [widget1, widget2, widget 6].
Непосредственно скидывание в лог ты, как умный человек, будешь делать в отдельном потоке.
Как реализуешь это на C++11?
Напиши, поделись сакральными знаниями. Народ спасибо скажет.
ну, ыо-первых у жабы не так много компиляторов, стараниями оракла будет ещё меньше. но да. то-то мне как только проблема с каким жаба-творением, все кричать «иди с опен-ждк на оракловский» оге. всё такое совместимое. и я даже не вспонимаю про кошмары при переходе между платформами.
Мне много не нужно. Один оракловый вполне устраивает. Несовместимости бывают, но не так часто. И как правило их быстро фиксят. Я лично лет 8 назад слал баг репорт в Apple и они свою проблему исправили оперативно.
у нас не отдел маркетинга. NASA свои ракеты на джаве не пишет, оракел саму базу на джаве не пишет,
У нас тоже. NASA свои ракеты пишет конечно не на java. Но и не на С++ тоже. :)
Oracle пишет на джава часть своей базы. Старая часть ядра видимо ещё на C.
куча пордуктов, котрые должны нормально работать, пишутся не на «качественной» джаве. с чего бы?
А ещё большая куча, которые действительно должны нормально работать а не в core сваливаться, пишутся на Java, C#, ADA и прочих. Но таки да, студентов набрать чтоб наколбасить очередной сырой «продукт» лекго на плюсы.
хотеть анализировать атомик операции валгриндом? месье знает толк...
Месье знает тольк в атомиках. :)
Можешь предложить thread analyzer для плюсанутого кода, что понимает атомики? Не можешь? Ну так и нечего дёргаться.
вообще говоря, пусть меня знающие товарищи поправят, atomic в java работают внутри виртуальной машины, т.е. для java они может и атомики, но вот для ОС - не уверен. атомики в С++ - это непрерываемые операции на уровне кода исполняемого процессором, как их вообще можно анализировать? только в дебаггере проверив результат до и после. и это делает любой дебаггер.
Знающие товарищи тебе скажут, что на уровке OS вообще атомиков нет. Они - конструкция уровня byte code или native code.
В теории их анализировать можно. Но это очень муторно в случае плюсов. Нужно инструментировать код, который инструментированию плохо поддаётся.
А в Java инструментируется всё хорошо. И по крайней мере атомики не сводят с ума инструментарий. В отличии от этого вашего...
ну а на кого валить? куча кода выполняется в виртуальной машине для того, что бы даже кодеры-ментальные-инвалиды могли что-то сделать и не завалить программу. сделать что-то просто на что-то наляпав.
Для начала, разберись с потрохами этих твоих андроедов.
Там всё ядро написано на C да плюсах.
Огульно валить на разработчиков приложений очень легко, но поскольку сам ты мало что написал в своей жизни, ничего кроме смеха это не вызывает.
А про быстро что-то наляпав, я вижу кучу примеров в области плюсов: pgAdmin, KDE, firefox. Это так навскидку. Но я не могу винить разработчиков. Инструмент - говно. Из него ничего нормального всё равно не сделаешь.
я не спорю, на java можно написать быструю и толковую программу, но так как все сильно спешат, времени на такие сантименты нету.
Когда как.
валяют что попало, а джава - всё стерпит, потому что интырпрайз.
Про enterprise много знаешь? Много работал в этой области? Не верится.
в итоге - старые телефоны едва шевелятся после обновления системы. любая фенька добавленная в интерфейс, любая функция и событие, порождает вызов кучи кода из разных объектов. да, всё ООП. но всё медленнее и медленнее
Спасибо ядру онроеда, благословенно написанном на плюсах, что быстры и не глючат. Телефон вообще без запущенных аппликух и с отключенным интернетом разряжается за день. Epic win.
Исходная версия
rtvd,
:
такое порно и на яве пишут все кому не лень. со своими стюардессами. только написаное плохо на С++ - ещё можно запустить. а на яве оно даже не взлетает. потому и неизвестно.
На Java оно не известно, потому что его нет. А нет его, потому что эти убогие костыли там не нужны в принципе. :)
Но откуда тебе об этом знать? Ты ведь Java не осилил.
синхронизация, асинхронные потоки и потоки вообще были прилично улучшены в C++11, который сейчас и используется.
Улучшены? Не много ли опечаток в фразе «впервые реализованы»? До C++11 в C++ вообще не было ничего стандартного касательно потоков. Поэтому народ и клепал свои поделия вроде boost или пользовался posix threads, где это было возможно.
проблемы убогих кодеров - исключительно их собственные.
Несомненно, ты - кодер не убогий. :) Даже страшно подумать, что ты там такое писал на C++11, что заткнёт за пояс нормальный код на Java.
Вот тебе простая задача.
Есть поток, который должен выполнить задачу за минимальное время. Он оперирует некоторой кучкой объёктов. В процессе работы ему иногда нужно нужно скидывать сообщения в лог. Сообщения нужно отформатировать, причём длина отформатированных сообщений изначально не известна, в них может быть как просто текст, так и числа (целые и дробные), списки объектов, и т.д. Конечно же, время события тоже должно быть точным.
Пример сообщения:
2013-10-10 11:22:33.567123456 The system detected a Foo event while being in state Bar and keeping track of the folowing Widgets: [widget1, widget2, widget 6].
Непосредственно скидывание в лог ты, как умный человек, будешь делать в отдельном потоке.
Как реализуешь это на C++11?
Напиши, поделись сакральными знаниями. Народ спасибо скажет.
ну, ыо-первых у жабы не так много компиляторов, стараниями оракла будет ещё меньше. но да. то-то мне как только проблема с каким жаба-творением, все кричать «иди с опен-ждк на оракловский» оге. всё такое совместимое. и я даже не вспонимаю про кошмары при переходе между платформами.
Мне много не нужно. Один оракловый вполне устраивает. Несовместимости бывают, но не так часто. И как правило их быстро фиксят. Я лично лет 8 назад слал баг репорт в Apple и они свою проблему исправили оперативно.
у нас не отдел маркетинга. NASA свои ракеты на джаве не пишет, оракел саму базу на джаве не пишет,
У нас тоже. NASA свои ракеты пишет конечно не на java. Но и не на С++ тоже. :)
Oracle пишет на джава часть своей базы. Старая часть ядра видимо ещё на C.
куча пордуктов, котрые должны нормально работать, пишутся не на «качественной» джаве. с чего бы?
А ещё большая куча, которые действительно должны нормально работать а не в core сваливаться, пишутся на Java, C#, ADA и прочих. Но таки да, студентов набрать чтоб наколбасить очередной сырой «продукт» лекго на плюсы.
хотеть анализировать атомик операции валгриндом? месье знает толк...
Месье знает тольк в атомиках. :)
Можешь предложить thread analyzer для плюсанутого кода, что понимает атомики? Не можешь? Ну так и нечего дёргаться.
вообще говоря, пусть меня знающие товарищи поправят, atomic в java работают внутри виртуальной машины, т.е. для java они может и атомики, но вот для ОС - не уверен. атомики в С++ - это непрерываемые операции на уровне кода исполняемого процессором, как их вообще можно анализировать? только в дебаггере проверив результат до и после. и это делает любой дебаггер.
Знающие товарищи тебе скажут, что на уровке OS вообще атомиков нет. Они - конструкция уровня byte code или native code.
В теории их анализировать можно. Но это очень муторно в случае плюсов. Нужно инструментировать код, который инструментированию плохо поддаётся.
А в Java инструментируется всё хорошо. И по крайней мере атомики не сводят с ума инструментарий. В отличии от этого вашего...
ну а на кого валить? куча кода выполняется в виртуальной машине для того, что бы даже кодеры-ментальные-инвалиды могли что-то сделать и не завалить программу. сделать что-то просто на что-то наляпав.
Для начала, разберись с потрохами этих твоих андроедов.
Там всё ядро написано на C да плюсах.
Огульно валить на разработчиков приложений очень легко, но поскольку сам ты мало что написал в своей жизни, ничего кроме смеха это не вызывает.
А про быстро что-то наляпав, я вижу кучу примеров в области плюсов: pgAdmin, KDE, firefox. Это так навскидку. Но я не могу винить разработчиков. Инструмент - говно. Из него ничего нормального всё равно не сделаешь.
я не спорю, на java можно написать быструю и толковую программу, но так как все сильно спешат, времени на такие сантименты нету.
Когда как.
валяют что попало, а джава - всё стерпит, потому что интырпрайз.
Про enterprise много знаешь? Много работал в этой области? Не верится.
в итоге - старые телефоны едва шевелятся после обновления системы. любая фенька добавленная в интерфейс, любая функция и событие, порождает вызов кучи кода из разных объектов. да, всё ООП. но всё медленнее и медленнее
Спасибо ядру онроеда, благословенно написанном на плюсах, что быстры и не глючат.