powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / string.GetHashCode() - нужна альтернатива, гарантирующая результат
25 сообщений из 81, страница 3 из 4
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39556998
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,

Если бы не было проблемы, то и не было бы темы, дубликаты были и довольно часто
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557000
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Повторы если и будут, то лично по недосмотру архитектора).
Повторы допускаются спецификой программы
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557019
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_NovichokPetro123Повторы если и будут, то лично по недосмотру архитектора).
Повторы допускаются спецификой программы
Кто берёт повторно на обработку?
Почему нет хранилища?
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557020
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Novichok,
Отсутствие повторной обработки обеспечивает хранилище с индексом.
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557028
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Отсутствие повторной обработки обеспечивает хранилище с индексом.
обработка строк производится в нескольких параллельных потоках, в которых эти самые строки могут дублироваться. Чтобы не делать эту повторную обработку и создается своего рода кеш обработанных значений, который шарится между потоками.

В общем в виду сложности обеспечения быстрого, надежного и дешевого способа сделать выжимку из строки, принято решение, что для каждого потока свой маленький кеш будет, ключом которого и будет сама строка.

Всем спасибо.
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557031
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с делать нормальный конкурентный доступ к строкам, чтоб 2 потока не могли получить 1 строку не проще сделать?
потом не удивляйтесь, что на костылях далеко не уедет.
как вы гарантируйте в вашей многопоточной среде, что оба потока не захватят 1 и туже строку, пока идет обращение к маленькому кешу?
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557041
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добавьте синхронизацию, что в 1 момент времени только 1 поток мог получить строку и проблемы не будет
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557042
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Novichokобработка строк производится в нескольких параллельных потоках, в которых эти самые строки могут дублироваться.
А я думал, откуда у вас повтор на обработку? )).
Вы сами сделали дубли распарралелив задачу. А темните, что дубли на входе)).
Вас всё равно трудно свернуть с Вашего решения.
Удачи).
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557043
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesдобавьте синхронизацию, что в 1 момент времени только 1 поток мог получить строку и проблемы не будет
+1
Можно ещё искусственно нарезать куски каждому потоку.
В общем, Фаулер советует не допускать конкуренции без нужды).
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557112
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Вы сами сделали дубли распараллелив задачу. А темните, что дубли на входе)).
я не скрывал этого, и уже говорил, что дубли строк допускаются. Ну специфика приложения такая. Ну разве я стал морочить голову из-за того, что не могу сделать выборку уникальных строк и обработать каждую отдельно? Если в параллельные потоки попадают дубликаты строк, значит это допустимо, и сразу скажу, оттуда их не представляется возможным убрать. и не в синхронизации проблема
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557117
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_NovichokPetro123Вы сами сделали дубли распараллелив задачу. А темните, что дубли на входе)).
я не скрывал этого, и уже говорил, что дубли строк допускаются. Ну специфика приложения такая. Ну разве я стал морочить голову из-за того, что не могу сделать выборку уникальных строк и обработать каждую отдельно? Если в параллельные потоки попадают дубликаты строк, значит это допустимо, и сразу скажу, оттуда их не представляется возможным убрать. и не в синхронизации проблема
Недавно была пятничная тема про получение уникальных строк, посмотри , может что полезное найдешь.
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557132
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Novichok за что я люблю отечественные форумы, что на них вместо ответа начинают рассказывать какие мы умные, и насколько тупой автор. на том же stackoverflow держатся как-то корректнее. Грустно из-за этого...

Автор реально тупой и тугой, и это настолько очевидно, что подобное жалкое блеяние выглядит практически шедевром
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557147
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

и где вы были раньше, чего так поздно подключились? Тема была бы интересней
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39557823
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_NovichokhVostt,

и где вы были раньше, чего так поздно подключились? Тема была бы интересней

"плохие отечественные форумы", где говорят правду в лицо и пытаются чему-то научить -- это уже китч.
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558248
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если бы вы еще по делу выражались, и пытались чему-то научить. А так вы только пытаетесь правду-матку говорить в лицо.
По делу батенька, по делу: предложите новый способ быстро и надежно захешировать строку.
Или правду легче говорить?
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558294
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Novichokбыстро и надежно захешировать строку.GetHashCode() - это быстро и надежно. Проблема в том, что вы неверно понимаете термин хэш, и не хотите менять терминологию. Хэш неуникален по определению, а уникальное представление - это не хэш, это сама строка, либо ее сжатый без потерь вариант.
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558305
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_NovichokИли правду легче говорить?
Это ваши слова?
авторДля чего нужен хеш?

мне он нужен, чтобы каким-либо образом идентифицировать строку, но не хранить в памяти сами строки, поскольку они могут быть очень длинными, при то, что сами строки нигде не используются
Учитесь говорить, прежде чем на форумы и не ту молодёжь пенять.
Вам дали 2 ссылки выше. Прочли?
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558347
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу GetHashCode() я уже давно понял, и искал альтернативы ему. Увы, быстрой и надежной альтернативы не нашел.
Остановились на использовании самой строки и ограничении кол-ва одновременных потоков для избежания чрезмерной нагрузки на память. Такой себе компромисный вариант. В пределах потока будут обрабатываться уникальные строки, ну а между потоками уже так и будет
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558348
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProGetHashCode() - это быстро и надежно
Быстро, но не надежно
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558351
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_NovichokБыстро, но не надежно
для поставленной задачи
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558412
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_NovichokShocker.ProGetHashCode() - это быстро и надежно
Быстро, но не надежно
Уже неоднократно написали что любой алгоритм хэша будет ненадежным идентификатором.
Совпадение хэша двух строк означает что строки вероятно одинаковы. И вероятность тем выше, чем выше битность хэша.
Т.е. строки равны при совпадении 128 бит MD5 намного вероятнее чем 32 бита GetHashCode(). Но 100% совпадения исходных строк ни один хэш не гарантирует.

PS Заменил у себя функцию 64-битного хэша (брал половину MD5) на эту 20972692 . Обработка 700 тыс. строк стала быстрее на 1.4 сек.
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558426
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Novichok_NovichokБыстро, но не надежно
для поставленной задачи
Разве была задача без слова хэш-код?
Мало декларировать альтернативы, надо ещё и быть готовым их обсуждать.
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558464
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sha256 тебе сгодится
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558491
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.,

уже смотрел, наряду с md5 слишком медленный
...
Рейтинг: 0 / 0
string.GetHashCode() - нужна альтернатива, гарантирующая результат
    #39558495
Фотография _Novichok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

Petro123Разве была задача без слова хэш-код?
да что же вы к слову "хеш-код" прицепились? Ну вроде же прояснил задачу, зачем мне нужен этот код, а вы все цепляетесь к словам
...
Рейтинг: 0 / 0
25 сообщений из 81, страница 3 из 4
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / string.GetHashCode() - нужна альтернатива, гарантирующая результат
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]