Что именно? Я признал что они являются некоторыми аналогами указателей на функции..и?crypto5 wrote:Про делегаты?
Как технарю из России стать программером в США за 150К
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
-
- Уже с Приветом
- Posts: 4207
- Joined: 10 Jan 2004 01:22
- Location: n-sk -> MD -> VA
Re: Как технарю из России стать программером в США за 150К
как насчет открыть отдельную тему в вопросах IT? базар про 150K был гораздо более увлекателен
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Как технарю из России стать программером в США за 150К
Ну так может вы напишите в чем именно заключаются ваши сомнения?ddv wrote: Мне просто стало интерестно как ФИЗИЧЕСКИ возможно сделать то что вы описали в Windows. По-моему это просто невозможно.
In vino Veritas!
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Элементарно. Как user space приложение может расчитать возможность попадания какого то участа памяти в cache процессора при том что есть диспетчер задач который не подвластен ему.crypto5 wrote:Ну так может вы напишите в чем именно заключаются ваши сомнения?
-
- Уже с Приветом
- Posts: 7187
- Joined: 31 Jan 2005 15:06
- Location: GA
Re: Как технарю из России стать программером в США за 150К
Ну так скажите че нить по теме (150k).fruit6 wrote:как насчет открыть отдельную тему в вопросах IT? базар про 150K был гораздо более увлекателен
Как по-вашему, достойны C#-повцы получать столько же сколько и C++-совцы.
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Как технарю из России стать программером в США за 150К
Оно может рядом мер существенно повысить эту вероятность, например генерить меньше memory barrier инструкций.ddv wrote:Элементарно. Как user space приложение может расчитать возможность попадания какого то участа памяти в cache процессора при том что есть диспетчер задач который не подвластен ему.crypto5 wrote:Ну так может вы напишите в чем именно заключаются ваши сомнения?
In vino Veritas!
-
- Уже с Приветом
- Posts: 8881
- Joined: 17 Jun 2003 04:41
Re: Как технарю из России стать программером в США за 150К
Они место на диске расходуют, в основном. Причем мало места (bytecode сильно компактнее чем x86). В памяти оказывается уже откомпилированный код конкретного метода, причем только тот который (часто)используется, и JIT может его тасовать как угодно. Последствия для производительности могут быть любые, как в плюс, так и в минус.ddv wrote:Но место то они все равно в памяти расходуют...
Это ровно тоже самая концепция как garbage collection, которая "сама" борется с heap fragmentation. С последствиями как в плюс, так и в минус.
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Похоже что многие java программисты и вправду уверенны, что VM обладает экстрасенсорными и паронормальными возможностями,т.к. может "учитывать" не используя память , реализовывать RTTI механизмы не загружая информацию о классах в память, угадывать место расположение виртуальных методов после выкидывания ненужных вместе с информацией о полной структуре класса...и т.п.Zombie416 wrote:Они место на диске расходуют, в основном. Причем мало места (bytecode сильно компактнее чем x86). В памяти оказывается уже откомпилированный код конкретного метода, причем только тот который (часто)используется, и JIT может его тасовать как угодно. Последствия для производительности могут быть любые, как в плюс, так и в минус.
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Как технарю из России стать программером в США за 150К
Это было потом, вначале вы категорично утверждали что масив указателей на функции в с# реализовать нельзя.ddv wrote:Что именно? Я признал что они являются некоторыми аналогами указателей на функции..и?crypto5 wrote:Про делегаты?
In vino Veritas!
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Ну тогда ваша очередь признавать что в java нет супер пупер memory manager'а который невозможно реализовать на C++...(хотя если бы он и был в VM то был бы реализован именно на С++ ).crypto5 wrote:Это было потом, вначале вы категорично утверждали что масив указателей на функции в с# реализовать нельзя.
Кроме того я все равно был прав - "масив указателей на функции в с# реализовать нельзя", можно только массив делегатов, а это не тоже самое...близко, но не тоже.
Last edited by ddv on 11 Feb 2011 22:29, edited 1 time in total.
-
- Уже с Приветом
- Posts: 567
- Joined: 06 Dec 2009 20:50
- Location: Kiev, UA -> Cupertino, CA
Re: Как технарю из России стать программером в США за 150К
О. Началось приписывание слов. Узнаю общение на форуме.Brazen wrote:То есть вы не спорите с тем, что это внешняя библиотека, к тому же еще и от стороннего разработчика?zzhou wrote:Hibernate - очень элегантное и удобное решений, которое преотлично работает в массе больших проектов и отлично экономит силы разработчиков.
Где я сказал что Hibernate - стандартная библиотека? Мне начали рассказывать про внешние библиотеки для XML и БД для C++ - я и привёл Hibernate - как пример того, что делают на Яве. Кстати, на C++ его вообще нетривиально реализовать - он полагается на reflection и генерацию байткода на лету.
-
- Уже с Приветом
- Posts: 567
- Joined: 06 Dec 2009 20:50
- Location: Kiev, UA -> Cupertino, CA
Re: Как технарю из России стать программером в США за 150К
С++ разработчикам за работу можно вообще не платить - им достаточно своего чувства превосходства от теоретической возможности написать велосипед, который давно реализован в Java VM и работает там с кодом написаном студентом из Индии.nightmare2 wrote:Как по-вашему, достойны C#-повцы получать столько же сколько и C++-совцы.
-
- Уже с Приветом
- Posts: 7187
- Joined: 31 Jan 2005 15:06
- Location: GA
Re: Как технарю из России стать программером в США за 150К
zzhou wrote:С++ разработчикам за работу можно вообще не платить - им достаточно своего чувства превосходства от теоретической возможности написать велосипед, который давно реализован в Java VM и работает там с кодом написаном студентом из Индии.nightmare2 wrote:Как по-вашему, достойны C#-повцы получать столько же сколько и C++-совцы.
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Как технарю из России стать программером в США за 150К
Не признаюddv wrote:Ну тогда ваша очередь признавать что в java нет супер пупер memory manager'а который невозможно реализовать на C++...(хотя если бы он и был в VM то был бы реализован именно на С++ ).crypto5 wrote:Это было потом, вначале вы категорично утверждали что масив указателей на функции в с# реализовать нельзя.
Конечно не то, делегаты ведь намного лучше, т.к. они type safe, не понимаю чем вы так гордитесь!Кроме того я все равно был прав - "масив указателей на функции в с# реализовать нельзя", можно только массив делегатов, а это не тоже самое...близко, но не тоже.
In vino Veritas!
-
- Уже с Приветом
- Posts: 8881
- Joined: 17 Jun 2003 04:41
Re: Как технарю из России стать программером в США за 150К
Мне трудно сказать в чем уверены Java программисты, есть большое количество разных JVM, но информации в сети предостаточно. Java HotSpot была интересной штукой еще 10 лет назад, и стала работать с тех пор гораздо быстрее http://java.sun.com/products/hotspot/do ... Id=1082375ddv wrote:Похоже что многие java программисты и вправду уверенны, что VM обладает экстрасенсорными и паронормальными возможностями,т.к. может "учитывать" не используя память , реализовывать RTTI механизмы не загружая информацию о классах в память, угадывать место расположение виртуальных методов после выкидывания ненужных вместе с информацией о полной структуре класса...и т.п.
В .NET угадывать виртуальные методы не нужно, они явно обозначаются программистом. Как и легко определить неиспользуемые private методы, что позволяют многие средства даже без компиляции вообще (C# / Java синтаксис гораздо моложе и проще чем C++). И да, информация о типах, ака metadata, содержится в исполняемом модуле отдельно от кода классов. И да, .NET в подавляющем большинстве случаев компилирует по методам (если иначе не указано хинтами), и при a=false
Code: Select all
if (a) b();
Что до производительности, есть вполне очевидная вещь, что если есть два динамически собираемых модуля A и B, в одном из которых есть нечто вроде
Code: Select all
namespace A { class X { public: static int Y(int z) { return z+5; }} }
Вот что заметно, так это что отдельные C++ - only программисты почему-то относятся к этому языку как к священной корове, не допуская что компиляторы бывают и у других языков. А если это C++ Windows-only программисты, то и самая мысль что программа может распространяться не в виде жестко откомпилированных в машинный код модулей, а требовать доводки на месте кажется кощунственной. Хотя при этом принимают чуть меньшую степень такой доводки, ака динамическую сборку, как должное. Чудеса, да и только. Но проходит со временем
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Ну тогда требую ссылку на оригинал...Нет ссылки - нет разговора.crypto5 wrote:Не признаю
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Вы на самом деле такой или только претворяетесь? Я писал что по вашему нужно угадывать РАСПОЛОЖЕНИЕ виртуального метода!!! Вы хоть слышали про таблицу виртуальных методов? Если вы выкинете такой метод в рантайме, то у вас ничего не сойдется и вы не найдете нужный метод на нужном месте.Zombie416 wrote: В .NET угадывать виртуальные методы не нужно, они явно обозначаются программистом.
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Вот вот...только во время исполнения она содержится и в ПАМЯТИ...и занимает МЕСТО независимо от того используется или нет.Zombie416 wrote:. И да, информация о типах, ака metadata, содержится в исполняемом модуле отдельно от кода классов.
-
- Уже с Приветом
- Posts: 567
- Joined: 06 Dec 2009 20:50
- Location: Kiev, UA -> Cupertino, CA
Re: Как технарю из России стать программером в США за 150К
А кто собирается его выбрасывать? Вы приписали Явистам несколько заведомо завирательных заявлений и теперь требуете эти заявления подтверждать. Это, несомненно, очень оригинальный и смелый способ ведения дискуссии.ddv wrote:Вы на самом деле такой или только претворяетесь? Я писал что по вашему нужно угадывать РАСПОЛОЖЕНИЕ виртуального метода!!! Вы хоть слышали про таблицу виртуальных методов? Если вы выкинете такой метод в рантайме, то у вас ничего не сойдется и вы не найдете нужный метод на нужном месте.Zombie416 wrote: В .NET угадывать виртуальные методы не нужно, они явно обозначаются программистом.
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Как технарю из России стать программером в США за 150К
Я совсем ничего не понял, вы написали какую то ерунду, потом попросили зачем то меня эту ерунду "признать", а теперь еще требуете каких то документальных доказательств? Я потерялся если чесно.ddv wrote:Ну тогда требую ссылку на оригинал...Нет ссылки - нет разговора.crypto5 wrote:Не признаю
In vino Veritas!
-
- Уже с Приветом
- Posts: 567
- Joined: 06 Dec 2009 20:50
- Location: Kiev, UA -> Cupertino, CA
Re: Как технарю из России стать программером в США за 150К
1. А никто (по крайней мере - я) не утверждает что Ява использует меньше памяти. Мы больше про быстродействие кода говорим.ddv wrote:Вот вот...только во время исполнения она содержится и в ПАМЯТИ...и занимает МЕСТО независимо от того используется или нет.Zombie416 wrote:. И да, информация о типах, ака metadata, содержится в исполняемом модуле отдельно от кода классов.
2. Типовая утечка памяти в C++ приложении заберёт больше памяти чем все загруженые но бесполезные классы в приложении на Яве(на всякий случай сообщу - в память грузятся только классы, которые реально используются)
3. Подозреваю, С++ программа тоже содержит мусор в exeшнике - и его иногда грузит в память.
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
НУ так я вам напомню..вы писалиcrypto5 wrote: Я совсем ничего не понял, вы написали какую то ерунду, потом попросили зачем то меня эту ерунду "признать", а теперь еще требуете каких то документальных доказательств? Я потерялся если чесно.
я вас попросилcrypto5 wrote: Проблема только в том что такие менеджеры обычно абстрагированы от системы многопоточности, и не могут эфективно разбивать кучу на области для потоков, а в джаве все с этим хорошо.
...
Я в этом не шибко разбираюсь, но к.м.к. таким образом стараются закешировать куски кучи в кеше процессора, на котором сейчас пускается поток, а если не разбивать на такие области, то каждый поход в память должен преодолевать memory barrier
после чего вы попытались перевести стрелки и уйти от ответаddv wrote:У вас есть ссылка но оригинал где описывается данный memory manager?
Более того, вы начали со мной спорить что на С++ написать такой memory manager нельзя, а в ответ на мое высказывание что можно потребовали предоставить пример такого...только вот какого вы сами не смогли сказать.crypto5 wrote: У меня нет доки под рукой, но следует заметить что у вас большая часть вашей аргументации состоит из утверждений, которые нужно так же детально изучать, что бы понять их применимость к данной дискуссии.
Так что или найдите ссылку на "ХОРОШИЙ java memory manager" который "можут эфективно разбивать кучу на области для потоков" или признайте что вы ошиблись
Last edited by ddv on 12 Feb 2011 00:45, edited 2 times in total.
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Не вы,а Zombie416 спорил со мной:zzhou wrote:1. А никто (по крайней мере - я) не утверждает что Ява использует меньше памяти. Мы больше про быстродействие кода говорим.
Zombie416 wrote:Они место на диске расходуют, в основном. Причем мало места (bytecode сильно компактнее чем x86). В памяти оказывается уже откомпилированный код конкретного метода, причем только тот который (часто)используется, и JIT может его тасовать как угодно.
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Как технарю из России стать программером в США за 150К
Вы там выше просили нечто другое. А кучу разбивают на подкучи для тредов все известные мне менеджеры памяти для джава, и на эту тему можно погуглить по запросам: "local thread heap java" & "local thread area java".ddv wrote: Так что или найдите ссылку на "ХОРОШИЙ java memory manager" который "можут эфективно разбивать кучу на области для потоков".
In vino Veritas!
-
- Уже с Приветом
- Posts: 481
- Joined: 04 Jul 2005 17:07
- Location: Москва->Staten Island NY
Re: Как технарю из России стать программером в США за 150К
Нечто другое это что???? все посты выше...если я не это просил, то что???crypto5 wrote:Вы там выше просили нечто другое.