![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#16
|
||||
|
||||
![]() to poli-smen
Ты меня забавляешь, у тебя или со зрением проблема или недостаток внимания. В каком месте ты увидел что идёт сравнение одной и тойже строки а не двух одинаковых ? Или тут такая же история у тебя приключилась как с первым твоим тестом ? То есть посмотрел, но не увидел, не до понял и ляпнул ? При чём тут мой тест ? Код моего теста на форум не выкладывался. Везде твои исходники, за исключением закомментированных двух нахрен не нужных строк. От чего в первом исходнике была обнаружена разница в показаниях и показана для особо одарённых в картинках. Но ты упёрся во что то своё и пытаешься доказать то ты не тот кем на самом деле являешься. to angvelem А по подробней можно ? В смысле, почему показания основанные на GetTickCount не имеют ценность ? Растолкуй, чтоб посетители темы понимали чем плох данный способ. to NumLock В данном случае, у меня создаётся поток, который при проведении сравнения ведёт счетчик. А основной поток усыпляется на 5000 миллисекунд, по истечении которого поток приостанавливается и берётся из него значение счётчика. QueryPerformanceCounter / QueryPerformanceFrequency использую как проверку, сколько всё таки спал основной поток. Результаты показали, что оператор Sleep имеет погрешность до +-5 десятых миллисекунды. То есть, показывает что якобы спал он не 5000, а 4999,5.......5000,5. Но это видать уже зависит от того, когда винда позволит потоку заработать сразу. Поэтому берется средняя из 10 результатов по 5 секунд. Тоже херовый подход ? Не спорю, количество выполненных операций будет на разных компах разный. Но соотношение размеров столбиков на диаграммах будут повторятся всегда. Цель была просто узнать, какими типами данных лучше оперировать для обеспечения максимальной скорости выполнения кода. Последний раз редактировалось seeman_tm, 30.11.2013 в 12:50. |
#17
|
||||||||
|
||||||||
![]() Цитата:
Со зрением у меня никогда проблем не было, хотя вплотную занимаюсь компьютерами ещё с детства. Когда на работе делаю несколько дел одновременно, внимание конечно снижается - здесь согласен - виноват. Цитата:
Код:
Цитата:
Хорошо. Вот тебе ещё один тест. Если и он тебя не убедит в твоей неправоте - тогда я пас. Код:
Цитата:
В любом случае я устал бить горохом о стену. Если кто-то упёрто считает что одинаковые строки должны сравниваться быстрее различных - это его проблема, а не моя. Согласен? |
#18
|
||||
|
||||
![]() Ну с начала о разоблачении.
Хоть ты и думаешь, но из-за невнимательности соображаешь плоховато. В следствие чего, не сразу догоняешь что от тебя требуется или что тебе пытаются втолковать. Теперь о былом. О том, что ты мне пытаешься разъяснить, я и так знаю. Вот тока я так и не дождался внятного ответа, зачем нужны за комментированные мною строки. Что же. Дам разъяснение сам. В операциях присваивания настоящего копирования памяти не происходит, а просто копируется указатель и увеличивается счетчик ссылок на 1. А при изменении переменной уже создается новая уникальная запись со своим счетчиком ссылок. Если при сравнении у двух переменных, счётчики ссылок и указатели совпадают, то сравнения строк, как таковых, не происходит, а возвращается валидность сравнения. Что и сказывается на разнице результатов выполнения функции. Если необходимо создать именно уникальную строку, а не увеличить счетчик ссылок, то для этого и имеется процедура UniqueString. Терь представь. Сколько ты зря времени потратил на написание процедур и участие в переписке на форуме. А ведь можно было все так элементарно объяснить. Если конечно же понимание этого было, а не понимание того, что так надо. Последний раз редактировалось seeman_tm, 30.11.2013 в 15:18. |
#19
|
||||
|
||||
![]() ТС, давай повежливей, хорошо?
poli-smen уважаемый человек на форуме а ты кто? Я за здоровый экстрим! Спасибо за "спасибо") |
#20
|
||||
|
||||
![]() Да я и не грублю.
А уважаемый poli-smen, не вникнув в то, что было оформлено в постах. Начал пытаться научить уму разуму. Не вникая в суть того, требуется ли это в данном случае. Где он увидел, что пара строк с наименьшим количеством символов сравниваются быстрее, чем пара строк с наибольшим ? В итоге и с этой ролью не справился. Фига се. Аж два поста воткнулось одинаковых. Последний раз редактировалось M.A.D.M.A.N., 02.12.2013 в 18:43. |