Pull to refresh
0
0
almazik @almazik

User

Send message
Что именно неверно? TryAddToAny добавляет элемент в одну из коллекций, и возвращает индекс коллекции, в которую был добавлен элемент. TryTakeFromAny извлекает элемент из одной из коллекций, и так же возвращает индекс коллеции.

Таким образом элемент будет присутствовать только в одной из коллекций, только один из читателей сможет его прочитать.

Насчет ConcurrentQueue — так и есть, она работает уровнем ниже (BlockingCollection использует ConcurrentQueue или другую IProducerConsumerCollection<T> коллекцию как внутреннее хранилище элементов). Я имел в виду что для ограничения количества элементов, которые находятся одновременно в обработке у всех читателей можно установить лимит на количество элементов в очереди с помощью конструктора BlockingCollection<T>(int boundedCapacity).
TryAddAny/TryTakeAny не подойдет, поскольку будет пытаться читать и писать в одну из коллекций, но идея правильная. Все что надо сделать — это создать по одной BlockingCollection на срез, используя ConcurrentQueue с ограниченным количеством элементов как внутреннее хранилище, и при чтении исходного IEnumerable просто в цикле добавлять новый кортеж в каждую BlockingCollection. В итоге получим: все читатели будут работать со своей очередью независимо друг от друга, тем самым сглаживая флуктуации по времени обработки в срезах. Поставщик данных будет задерживаться на самом медленном читателе только если у того переполнится очередь.
Единственное, чего не хватает статьи для полноты картины — ссылки на Митний Кодекс України (Таможенный Кодекс Украины): zakon1.rada.gov.ua/laws/show/4495-17, неплохо было бы добавить в текст. А так — отличная статья, очень толково написано.
Подтверждаю, при пересылке обычной почтой таможенные пошлины оплачиваются прямо в почтовом отделении перед тем, как забрать посылку.
Проблема вашего (автора) подхода заключается в:

1. Бессмысленном усложнении data-access слоя.
2. Построении абстракции над абстракцией (IQueryable)
3. Сложность при разработке: для того, чтобы выяснить, какие критерии поддерживаются конкретной сущностью, придется _искать_ соответствующую реализацию.
неавторизированный овердрафт в большинстве случаев стоит дороже микрокредита
у меня пользователь — корпоративный сайт, так что мне его упрашивать поставить .NET не придется :). Ну ок, теперь ясно что в исходном посте имелось в виду VC++.
А можно поподробней? Сижу на 2010 с мая, имею толпу мелких проектов — порядка 3-10 классов в каждом. скомпиленные dll (в Debug mode) занимают до 20КБ. Никаких проблем с разрастанием dll не замечал.

P.S. Студией очень доволен, наконец-то они сделали нормальную поддержку нескольких мониторов. Память жрет хорошо, но IMHO на памяти экономить не стоит
У меня 42'' уже два года, смотрю с расстояния в 2 метра. Сразу после покупки телека экран казался большим, сейчас уже раздумываю поменять на 46''-50''
Мне больше всего не понравилось потеря фокуса при трансфокации в ролике vimeo.com/9933296. С такими проблема камера IMHO неюзабельна для домашнего видео
Что-то уж больно сырая бета у них получилась… вот результат открытия солюшена (14 проектов, в основном Class Library + 2 Web Application):

Около 600 исключений решарпера (разных — порядка 10-12)
Решарпер не смог распарсить ни одного класса в проекте (в результате Goto type содержит исключительно классы фреймворка)
Solution Analyzer пометил все файлы солюшена как ошибочные

Отправил логи ошибок разработчикам, надеюсь через месяц-другой продукт уже будет юзабельным.
А чем XSD не типизация? В своих проектах от всех девелоперов требую к каждому новому виду XML в обязательном порядке прикладывать XSD.
упс, графика у меня отдельной картой. Копипаст — это зло :)
Поставил на чистый винт Windows 7 RTM Ultimate (официальная по подписке), комп
1. CPU: AMD Athlon 64 3200+ (2000 МГц);
2. Чипсет: nVidia nForce 4 + GeForce 6600 (встроенная графика, встроенная сетевая карта);
3. ОЗУ: 1 Гб;
4. Диск: 120 Гб + 500ГБ;

Конфигурация по памяти, давно апгрейдил :). Все стало без пинков и дополнительных драйверов, разве что иногда чувствуется небольшое подтормаживание UI при загрузке проца — я это списываю на одноядерность проца, в остальном полностью доволен
* одна минута географического меридиана равна 1852 метрам.
* в градусе 60 минут, т.е. 60*1852 метра
* в одном километре — 1/(60*1.852) градусов

На самом деле одна минута широты примерно равна 1852 метра. С долготой немного тяжелее. Если в первом приближении считать землю шариком — можно выйти на такую формулу (lat — широта, L long(lat) — длина минуты долготы на широте lat):

L long(lat) = cos(lat)*1852м.

Получается на широте Киева (50.4) длина одной минуты долготы примерно равна 1180 метров
Совсем не набегает. Стандартный прием маркетологов — увеличить зону различий на весь экран и демонстрировать доли процента как гигантский скачок. Начальная точка отсчета во всех графиках смещена относительно нуля.

Для примера: на чарте «Football — CIF, 30fps» при битрейте 330kbps VP8 опережает (если верить разработчикам) H.264 High примерно на 2.6% (31.3 против 30.5)
VisualSVN — плагин к Visual Studio, полностью интегрирует TortoiseSVN в оболочку Visual Studio. Но при этом есть возможность выполнять все действия и из проводника/командной строки.

А о слабости SourceSafe как системы управления версиями говорит хотя бы отсутствие транзакционного коммита.
В Украине уже года 4 как ввели правило "зеленая стрелка". Зеленая стрелка на белом фоне крепится рядом со светофором, указывает направо. Разрешает поворот направо при красном сигнале светофора при условии, что ты не создаешь препятствий другим участникам движения.
Насчет ориентации на США - согласен, но то что нам не интересна - абсолютно не согласен. Я из Киева.

1. iPhone купил своей девушке, так она теперь вообще не может представить, "как можно было пользоваться этими допотопными мобилами" (дословно). Инетом пользуется вовсю, благо и дома, и на работе есть WiFi, в дороге EDGE. YouTube работает нормально (в основном через WiFi). В Гугл Мапс детализация конечно хуже чем США, но на трассе разобраться можно. Жаль привязка к местности будет работать только в США. iTunes Store не юзает, хватает своих MP3 :)

2. Apple TV - пока не рассматривал как покупку, но если в нем есть HDMI выход + он умеет играть обычный DivXы - очень может быть. "Огромный телевизор" как раз недавно купил (42'' можно и за $1200 купить, думаю что это уже приемлемая цена).

3. MacBook Air при желании можно привезти из штатов, будет те же $1800

4. Time Capsule купил бы прямо сейчас, больше всего порадовало
1

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity