just::thread — платная, да. Но на их сайте много информации полезной;)
А boost::task имеет 2 стратегии — то про что вы говорите — bounded очередь, которая специально так и сделана. Но можно использовать unbounded — тогда задача будет добавляться сразу.
Тех, которые обслуживают большое число пользователей. Ну к примеру google, twitter, livejournal, digg, flickr, youtube, и тд.
> Для примера lineage 2 виндовый, knights online — тоже виндовый. Про еву не знаю — она мне была интересна только своими изысканиями в сторону stackless python.
Я ж и не спорю, под windows тоже достаточно много хороших MMO серверов.
> Кстати, интересно было бы узнать про ВоВ.
Тоже очень интерестно, но такой информации в сети не видел.
Есть, кстати, open-source сервер WoW-а — MaNGOS — он кроссплатформенный.
> Точно? Я знавал одну контору в МСК, которая этот бигворлд пару лет назад лицензировать хотела, там вроде совсем не линукс был.
Ну все зависит от разработчика — можно и на linux сделать неоптимальный сервер, ровно как и высоконагруженую систему (нету точной информации, но возможно, что EveOnline использует Windows, MS SQL они используют).
Ещё вопрос почему большая часть высоконагруженых систем все-таки использует linux, а не windows?
Ну в подтверждение сказаного про буст — ещё один пример: там были реализованы и умные указатели (shared и weak). Реализованы с использованием мютексов (для изменения счетчика ссылок). boost.smart_ptr — уже давно использует атомарные операции и в нет необходимости блокировок, ну и ещё много бонусов дает по сравнению с самописными реализациями (boost::enable_shared_from_this к примеру).
И это не первый раз когда я вижу, что кто то изобретает свои умные указатели. В универе понятное дело — можно эксперементировать, но на работе зачем?
Как бы да. Вы считаете что Windows Server лучше подходит под такие задачи?
> Это понятно. Вопрос в том, встанет ли вопрос о портировании вообще.
Ну это скорее приятный бонус, который дается бесплатно. Если есть выбор из двух библиотек: кроссплатформенной и нет — то я бы остановился на первой при прочих равных.
ПО пишется для linux-а;)
В любом случае если использовать boost — то портировать под любую другую платформу будет намного легче (так как он кроссплатформенный), чем если бы использовать конкретное api.
Там работают такие же параматры как и в ридере. Нажимаю на рассылку в ридере и подучаю в адресной строке чтото типа ...reader/view/#stream/feed… копируем от # и до конца строки и добавляем этот параметр к www.google.com/reader/play/.
К примеру reader/play для habrahabr
Не обязательно весь демон писать на плюсах, мы к примеру часть логики выносим в скриптовый язык (lua, но можно к примеру использовать mono) и получается замечательная комбинация требовательного по производительности кода на C++ и не требовательной бизнес логики на lua. Это даёт возможность для маневров (оптимизация узких мест), но не слишком замедляет разработку (код на lua пишется на порядок быстрее).
По поводу марсоходов, я слышал что они пишутся на Ada, языке в котором можно доказать, что в нем нету ошибок (утверждать не бурусть, но это запало в память;)
Real-time java — да, слышал. Но думаю, что не все продвинутые джавистя сходу справятся с этой задачей.
ну в языках с настоящим gc конечно немного по другому, но как ни странно в них тоже есть утечки (я сам удивился, когда гуглил аллокаторы памяти и тулзы для анализа утечек).
ни и ещё друзья, которые професионально пишут на java, тоже пугали всякими страшилками;)
но сама идея в том, что минимизируя риск утечек, к примеру используя только контейнеры и умные указатели, все равно можно выстрелисть себе в ногу, но разобраться в причине будет намного сложнее.
Дозировка: Упоминалось 14 литров Время: 12 часов или около того Доступность: всегда доступна Hадежность: неизвестна
Вызывает обессоливание организма (вымывает соли), что приводит к судорогам и остановке дыхания. Hужно пить непрерывно, вплоть до потери сознания.
Довольно необычный метод. Вот что говорили в [2]: «Около года назад в местных газетах была история про женщину, которая допилась до смерти. Она проглотила что-то слегка ядовитое и, когда она позвонила своему врачу, спрашивая его, что делать, он сказал ей, чтобы она выпила побольше воды и зашла к нему утром. J: Это называется „форсированный диурез“ — чтобы отрава вышла с водой.
Она перестаралась, и выпила не меньше 14 литров воды, пока осмотический баланс ее тела не был совершенно разрушен и она умерла (неизвестно, как быстро).» C: Эта история исходит от меня, а случай произошел в Швеции. J: Городок назывался VДxjЖ (switch to sweden cp), что-то вроде Vaxja. C:Hо, к сожалению, я не помню названия газеты. Hедавно мне рассказали про подобный случай в Сан Антонио. Он предположительно произошел пару лет назад и был описан в местной San Antonio Express/News.
Если много разработчиков — то ничего не меняется, кроме того, что на зеркало на gitorious будет залтивать один человек. А все остальные работают с svn-ом как и раньше работали без использования всех приемуществ dvcs (это костыль, но он работает).
Более правильно было бы сграбить всю историю проекта через git-svn — а дальше работать сугубо с git-ом (гугл говорит, что SF пообещали сделать поддержку dvcs)
Кода — проще пареной репы.
На SF — svn, на машине разработчика git. Общение при помощи бриджа git-svn. На gitorious.org используете git, куда разработчик просто заливает обновления штатными средствами оного.
В Политике приватности не указано сколько хранится информация, но тут пишут что тоже 18. То что через пол года удаляется ip ничего не решает — так как данные о пользователе, скорее всего, можно восстановить по кукам.
А эту новость сделали просто потому что Майкрософт не рассчитывало на такой объем логов и у них заканчивается место на дисках=)
Почитал msdn про VS2010 — обещают улучшить code completion и новый header dependency tool, остальное не интересно (красивее интерфейс, улучшения в MFC). Очень «понравилось»: Our implementation of TR1 contains a number of important features such as smart pointers, regular expression parsing, containers (tuple, array, unordered set, etc) and sophisticated random number generators.
Ну тяжело было им взять boost? Он и так кроссплатформенный, работает под VS и по нему писался стандарт, зачем изобретать велосипед?
Ну и ладно, хорошо что про сишников хотя бы вспомнили.
По поводу либ — вам не повезло. Но и сравнение не совсем правильное. Одна функция — это имелось ввиду WinAPI или внешние библиотеки?
К примеру, как мне поможет msdn если мне надо в c++ использовать протокол XMPP?
Когда я программировал только под win32 — я использовал много open source библиотек (к примеру zlib, libpng, tinyxml, lua, curl, pthreads, boost, berkeley db, ogre, irrlicht).
Под виндой при поиске и выборе таких библиотек ничего не изменится.
Лицензии? А под виндой вас не заботит что вы используете GPL код не открывая сорци? Или используете только закрытый софт? Лично я смотрел на лицензии и искал LGPL аналог.
А вообще я редко спрашиваю на форумах про библиотеки — обычно поиск в гугле «c++ задача», «c++ задача library comparison»,… Если есть несколько — сравниваю по фичам и насколько активно развивается проект. При равных прочих выбираю то, чей код и архитектура на глаз нравятся больше.
Обычно большинство вопросов уже задано и на них получен ответ, а гугл помогает найти его.
Не знаю какую студию вы используете, но как по моему мнению последняя версия kdevelop (3.9.97) уже лучше чем когда-то мной используемая связка VS2005+VisualAssistX. Ещё немного допила в плане стабильности и любых хомяпользователей VS С++ можно будет пересадить на kdevelop. Насколько я знаю в последних версиях VS основной упор был сделан на .NET и про С++ давно забыли.
По поводу библиотек — это же прекрасно что есть выбор. Кстати много и кроссплатформенных библиотек. И да — портировать userspace код с linux-а на win намного проще, чем наоборот. Сетевой стек? Используйте boost::asio или другую библиотеку.
а. — Тот же kdevelop давно поддерживают менеджмент проекта через гуй (если не нравится kdevelop — есть много других IDE типа codelite, netbeans, codeblocks, ...)
г. — платят за опыт работы с технологией (языком к примеру), а не за опыт работу в IDE, джависту к примеру платят за знание фреймворков (к примеру GWT), а не за опыт работы в IDEA. Может моя продуктивность в VIM больше чем в IDEA. Кого это волнует
А boost::task имеет 2 стратегии — то про что вы говорите — bounded очередь, которая специально так и сделана. Но можно использовать unbounded — тогда задача будет добавляться сразу.
Попробуйте следующий код:
Тех, которые обслуживают большое число пользователей. Ну к примеру google, twitter, livejournal, digg, flickr, youtube, и тд.
> Для примера lineage 2 виндовый, knights online — тоже виндовый. Про еву не знаю — она мне была интересна только своими изысканиями в сторону stackless python.
Я ж и не спорю, под windows тоже достаточно много хороших MMO серверов.
> Кстати, интересно было бы узнать про ВоВ.
Тоже очень интерестно, но такой информации в сети не видел.
Есть, кстати, open-source сервер WoW-а — MaNGOS — он кроссплатформенный.
> Точно? Я знавал одну контору в МСК, которая этот бигворлд пару лет назад лицензировать хотела, там вроде совсем не линукс был.
Тут и тут пишут, что linux.
Ещё вопрос почему большая часть высоконагруженых систем все-таки использует linux, а не windows?
Ну и пару примеров Linux-серверов MMO:
Second Life использует Debian Linux
Perfect World — Linux.
Из движков:
Big World Tech — Linux
Hero Engine — поддерживает Linux и Windows.
Smart Fox Server — Linux, Windows, MacOSX
И это не первый раз когда я вижу, что кто то изобретает свои умные указатели. В универе понятное дело — можно эксперементировать, но на работе зачем?
Как бы да. Вы считаете что Windows Server лучше подходит под такие задачи?
> Это понятно. Вопрос в том, встанет ли вопрос о портировании вообще.
Ну это скорее приятный бонус, который дается бесплатно. Если есть выбор из двух библиотек: кроссплатформенной и нет — то я бы остановился на первой при прочих равных.
В любом случае если использовать boost — то портировать под любую другую платформу будет намного легче (так как он кроссплатформенный), чем если бы использовать конкретное api.
К примеру reader/play для habrahabr
По поводу марсоходов, я слышал что они пишутся на Ada, языке в котором можно доказать, что в нем нету ошибок (утверждать не бурусть, но это запало в память;)
Real-time java — да, слышал. Но думаю, что не все продвинутые джавистя сходу справятся с этой задачей.
ни и ещё друзья, которые професионально пишут на java, тоже пугали всякими страшилками;)
но сама идея в том, что минимизируя риск утечек, к примеру используя только контейнеры и умные указатели, все равно можно выстрелисть себе в ногу, но разобраться в причине будет намного сложнее.
Дозировка: Упоминалось 14 литров
Время: 12 часов или около того
Доступность: всегда доступна
Hадежность: неизвестна
Вызывает обессоливание организма (вымывает соли), что приводит к судорогам и остановке дыхания. Hужно пить непрерывно, вплоть до потери сознания.
Довольно необычный метод. Вот что говорили в [2]: «Около года назад в местных газетах была история про женщину, которая допилась до смерти. Она проглотила что-то слегка ядовитое и, когда она позвонила своему врачу, спрашивая его, что делать, он сказал ей, чтобы она выпила побольше воды и зашла к нему утром.
J: Это называется „форсированный диурез“ — чтобы отрава вышла с водой.
Она перестаралась, и выпила не меньше 14 литров воды, пока осмотический баланс ее тела не был совершенно разрушен и она умерла (неизвестно, как быстро).»
C: Эта история исходит от меня, а случай произошел в Швеции.
J: Городок назывался VДxjЖ (switch to sweden cp), что-то вроде Vaxja.
C:Hо, к сожалению, я не помню названия газеты. Hедавно мне рассказали про подобный случай в Сан Антонио. Он предположительно произошел пару лет назад и был описан в местной San Antonio Express/News.
я вот для srt-ок аналог php-ного скрипта написал (unix-way=)
cat The.Invention.of.Lying.2009.HDRip_\[torrents.ru\].ENG.srt |
egrep -v '(\-\->|^[0-9])' |
sed -e 's/[,.?!()":;\-]/ /g' -e 's/\r/ /' |
sed -e :a -e '$!N; s/\n/ /; ta' |
sed -e 's/ \+/\n/g' -e 's/\(.*\)/\L\1/g' |
sort | uniq -c | sort -r -n |
awk '{print $2"\t"$1 }' |
column -t | less
Более правильно было бы сграбить всю историю проекта через git-svn — а дальше работать сугубо с git-ом (гугл говорит, что SF пообещали сделать поддержку dvcs)
На SF — svn, на машине разработчика git. Общение при помощи бриджа git-svn. На gitorious.org используете git, куда разработчик просто заливает обновления штатными средствами оного.
You'll only lost your time.
You have to pay for advanced lessons.
just to earn или just for earning
chromium-browser — 5.0.306.0~svn20100126r37082-0ubuntu2~ucd1~karmic
chromium-codecs-ffmpeg-nonfree — 0.5+svn20091210r34297+36953+37055-0ubuntu1~ucd1~karmic
А эту новость сделали просто потому что Майкрософт не рассчитывало на такой объем логов и у них заканчивается место на дисках=)
Our implementation of TR1 contains a number of important features such as smart pointers, regular expression parsing, containers (tuple, array, unordered set, etc) and sophisticated random number generators.
Ну тяжело было им взять boost? Он и так кроссплатформенный, работает под VS и по нему писался стандарт, зачем изобретать велосипед?
Ну и ладно, хорошо что про сишников хотя бы вспомнили.
По поводу либ — вам не повезло. Но и сравнение не совсем правильное. Одна функция — это имелось ввиду WinAPI или внешние библиотеки?
К примеру, как мне поможет msdn если мне надо в c++ использовать протокол XMPP?
Когда я программировал только под win32 — я использовал много open source библиотек (к примеру zlib, libpng, tinyxml, lua, curl, pthreads, boost, berkeley db, ogre, irrlicht).
Под виндой при поиске и выборе таких библиотек ничего не изменится.
Лицензии? А под виндой вас не заботит что вы используете GPL код не открывая сорци? Или используете только закрытый софт? Лично я смотрел на лицензии и искал LGPL аналог.
А вообще я редко спрашиваю на форумах про библиотеки — обычно поиск в гугле «c++ задача», «c++ задача library comparison»,… Если есть несколько — сравниваю по фичам и насколько активно развивается проект. При равных прочих выбираю то, чей код и архитектура на глаз нравятся больше.
Обычно большинство вопросов уже задано и на них получен ответ, а гугл помогает найти его.
хомяпользователей VS С++ можно будет пересадить на kdevelop. Насколько я знаю в последних версиях VS основной упор был сделан на .NET и про С++ давно забыли.По поводу библиотек — это же прекрасно что есть выбор. Кстати много и кроссплатформенных библиотек. И да — портировать userspace код с linux-а на win намного проще, чем наоборот. Сетевой стек? Используйте boost::asio или другую библиотеку.
а. — Тот же kdevelop давно поддерживают менеджмент проекта через гуй (если не нравится kdevelop — есть много других IDE типа codelite, netbeans, codeblocks, ...)
г. — платят за опыт работы с технологией (языком к примеру), а не за опыт работу в IDE, джависту к примеру платят за знание фреймворков (к примеру GWT), а не за опыт работы в IDEA. Может моя продуктивность в VIM больше чем в IDEA. Кого это волнует