|
|
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
mayton, мне показалось это понятным - если не ошибаюсь, сначала быстро идет проверка non-thread safe, а если она прошла, то уже идёт дорогая thread-safe проверка и исполнение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 00:54:05 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
an0nym... дорогая thread-safe проверка ... С блэкджэком и блокировкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 00:54:49 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
an0nymмне показалось это понятным - если не ошибаюсь, сначала быстро идет проверка non-thread safe, а если она прошла, то уже идёт дорогая thread-safe проверка и исполнение.А Вы не задумывались над таким простым вопросом: «если проверка non-thread safe может возвращать реальные результаты, зачем нужна thread-safe проверка»? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 02:34:59 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
Ёш, потому что проверка массива и последующее действие над ним - не атомарно. После входа в критическую секцию и соответствующей блокировки - атомарно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 02:41:19 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
an0nymЁш, потому что проверка массива и последующее действие над ним - не атомарно. После входа в критическую секцию и соответствующей блокировки - атомарно.«Потому что потому» — это круто :) «потому что проверка массива и последующее действие над ним - не атомарно» — я Вам про это и пишу, как Вы можете проверить «non-thread safe» это состояние? Это невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 02:56:16 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
Ёш, ну объясните тогда нам, как надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 03:22:08 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
Ёшя Вам про это и пишу, как Вы можете проверить «non-thread safe» это состояние? Это невозможно. А я и не собираюсь без блокировки его проверять. Без блокировки только проверяется нужно ли проверять тщательно или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 03:25:14 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
an0nymЁш, ну объясните тогда нам, как надо?Я не знаю, я у Вас и спрашиваю — как Вы предлагаете одновременно для одних и тех же данных делать non-thread safe и thread safe проверку? :) ps: ладно замнём, мне всё равно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 03:27:45 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
an0nymА я и не собираюсь без блокировки его проверять. Без блокировки только проверяется нужно ли проверять тщательно или нет.Как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 03:28:21 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
Ёшan0nymА я и не собираюсь без блокировки его проверять. Без блокировки только проверяется нужно ли проверять тщательно или нет.Как? Так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 03:30:24 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
an0nymЁшan0nymА я и не собираюсь без блокировки его проверять. Без блокировки только проверяется нужно ли проверять тщательно или нет.Как? Так.ок :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 03:31:10 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
Ёшan0nymЁш, ну объясните тогда нам, как надо?Я не знаю, я у Вас и спрашиваю — как Вы предлагаете одновременно для одних и тех же данных делать non-thread safe и thread safe проверку? :) ps: ладно замнём, мне всё равно :) Еж, давай я тебе расскажу одну штуку, о которой ты наверное невкурсе. Есть такая структура данных. Называется Фильтр Блума. По сути это хеш-таблица, которая хранит булевые значения. Она имеет фиксированный размер но способна хранить универсальное множество (универсум) всех ключей. Здесь - подвох скажешь ты. Да. Подвох. Фильтр Блума выдает нечёткий результат. Правильнее сказать для некоторых проверок он выдаёт ложные срабатывания. Т.е ключ есть с вероятностью 99.5 % к примеру. И чем больше ключей в фильтре - тем больше ложных срабатываний. Единственное что он говорит точно - то что такой ключ в множестве отсутствует. Несмотря на эту особенность фильтр Блума (я-бы назвал его хешем Блума) используется в прокси-серверах для ПРЕДВАРИТЕЛЬНОЙ проверки URL на наличие в реальном кеше. Всё благодаря его скорости работы. Вот тебе полезный эффект от ПРЕДВАРИТЕЛЬНОЙ проверки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 11:13:47 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
mayton, в итоге я был близко к истине или нет? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 11:25:45 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
an0nymсначала быстро идет проверка non-thread safe, а если она прошла, то уже идёт дорогая thread-safe проверка и исполнение. Да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 11:35:39 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
maytonЕж, давай я тебе расскажу одну штуку, о которой ты наверное невкурсе. Есть такая структура данных. Называется Фильтр Блума. По сути это хеш-таблица, которая хранит булевые значения. Она имеет фиксированный размер но способна хранить универсальное множество (универсум) всех ключей. Здесь - подвох скажешь ты. Да. Подвох. Фильтр Блума выдает нечёткий результат. Правильнее сказать для некоторых проверок он выдаёт ложные срабатывания. Т.е ключ есть с вероятностью 99.5 % к примеру. И чем больше ключей в фильтре - тем больше ложных срабатываний. Единственное что он говорит точно - то что такой ключ в множестве отсутствует. Несмотря на эту особенность фильтр Блума (я-бы назвал его хешем Блума) используется в прокси-серверах для ПРЕДВАРИТЕЛЬНОЙ проверки URL на наличие в реальном кеше. Всё благодаря его скорости работы. Вот тебе полезный эффект от ПРЕДВАРИТЕЛЬНОЙ проверки. Спасибо за упоминание фильтра Блума, погуглил, почитал - очень интересная вещь. А где подобные вещи описаны? Кого читать для просвещения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 15:04:43 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
Увы, не знаю. Я о фильтре Блума прочитал чисто случайно, когда искал обзорные статьи о squid (если мне не изменяет память). Дальше - wiki и т.д. кликаем по ссылкам. В фундаментальной литературе по алгоритмам и (Кнут, Вирт и прочие) СД я к сожалению упоминания об этой структуре данных не находил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 15:17:24 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
maytonВот тебе полезный эффект от ПРЕДВАРИТЕЛЬНОЙ проверки.Фильтр Блума non-thread safe? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 15:36:10 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
maytonОт языка зависит. Но для большинства императивных заход в выражение for(..) выполняется всегда хотя-бы 1 раз независимо от результата предиката цикла. Это с чего-бы ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 15:41:10 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
ЁшmaytonВот тебе полезный эффект от ПРЕДВАРИТЕЛЬНОЙ проверки.Фильтр Блума non-thread safe? Забудь про thread-safe. Я хотел привести пример вероятностной оптимизации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2010, 15:48:29 |
|
||
|
"а был ли мальчик?"
|
|||
|---|---|---|---|
|
#18+
mayton wrote: > От языка зависит. Но для большинства императивных заход в выражение > for(..) выполняется всегда хотя-бы 1 раз независимо от результата > предиката цикла. Я наверное понял, что ты имел в виду. Что выражения в цикле выполняются хотя бы один раз. for( int i = array.get_size(); i < array.size(); ++i ) { process_element( array[i] ); } int i = array.get_size(); и i < array.size(); будут выполняться как правило хотя бы один раз в большинстве языков программирования. Это вполне правильное утверждение. Но process_element( array[i] ); в большинстве языков программирования МОЖЕТ НЕ ВЫПОЛНИТСЯ НИ РАЗУ, потому что в большинстве языков большинство циклов являются циклами с предусловиями. (в C/C++ while, for -- с предусловиями, do ... while -- с постусловиями). Поскольку в 90% случаев кода пробега по массивам условие выхода из цикла должно проверять наличие текущего элемента в массиве тем или иным образом (в смысле -- не кончился ли ещё массив), то я лично считаю, что в циклас с предусловиями НЕ НАДО проверять массив на пустоту, прежде чем по нему бежать. В циклах с постусловием -- надо. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2010, 19:11:34 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36792186&tid=1343514]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
199ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 571ms |

| 0 / 0 |
