AVK Selected
Показавшиеся интересными, на мой вкус, посты
04.06.2015
|
|||||||
Товарищ SergASh начал обсуждение, поскольку некропостинг — отдельным топиком.
Тема ассертов довольно объёмная и как всегда, надо начинать с самого начала. Т.е. с Зачем нужны ассерты?
|
|||||||
05.06.2015
|
|||||||
Здравствуйте, Sheridan, Вы писали:
S>Напомню, с чего всё началось. Началось всё с того, что я предположил дальнейший путь повышения производительности софта, в связи с скорым (?) достижением железом потолка, будет прокладываться в сторону распараллеливания. Тут есть ещё такой момент. Описанный, ЕМНИП, у Кнута. Возьмём какую-нибудь простую задачку. Например, сортировку массива. Есть десятки алгоритмов, построенных для однопоточных реализаций. Есть несколько алгоритмов, которые построены для многопоточных. Возьмём экстремальный пример: предположим, у нас есть неограниченное количество "ядер" — вычислителей, каждый из которых может выполнять простую операцию типа compare-and-swap за одну стадию. Длина массива — N. За какое минимальное количество стадий мы можем отсортировать массив? Внезапно выясняется, что у современной математики нет способа решения таких задач. Для небольших количеств ядер (<10) нам известны оптимальные конфигурации процессорной сети — полученные, собственно, прямым перебором. |
|||||||
10.10.2012
|
|||||||
Буду краток.
HgLab -- написанный на .NET сервер Mercurial с поддержкой Push/Pull, браузер исходников, управлятор группами и пользователями и (в будущем) многое другое интересное (Merge Request'ы, поиск по коду, Issue Tracking, Deployment Tracking). Сейчас доступна первая альфа, которая уже второй месяц гоняется у меня в команде и догфудится по полной программе. |
|||||||
07.08.2014
|
|||||||
Draft spec for records and pattern-matching in C#
https://roslyn.codeplex.com/discussions/560339 |
|||||||
04.06.2014
|
|||||||
Сабж. Ещё подробности.
Если коротко — ранний билд VS с поддержкой всего, что наобещали на //build/, включая RyuJIT, ef7 и asp.net vNext. Сборка очень ранняя, требуется ставить на "чистую" машину без установленной ранее VS (читай — лучше не рисковать и использовать для экспериментов виртуалку). Из того, что точно будет интересно пощупать — интегрированный в VS roslyn compiler + c# 6 со всеми плюшками типа someVal?.ToString() ?? "". |
|||||||
27.07.2014
|
|||||||
Демонстрация возможностей linq2db по созданию таблиц в БД и изменению данных в них
|
|||||||
09.01.2014
|
|||||||
Один весьма известный и уважаемый в узких кругах исследователь взял на себя труд глянуть по диагонали отдельные части реализации иксов и подготовить об этом презенташку для очередной конференции по новым компьютерным технологиям и защите компьютерных программ: http://media.ccc.de/browse/congress/2013/30C3_-_5499_-_en_-_saal_1_-_201312291830_-_x_security_-_ilja_van_sprundel.html
Для тех, кому лень смотреть и делать выводы... Пара цитат из презентации:
и
речь о 120 security багах, если кто не понял. После такой внезапности, xorg-разрабы решили (видимо впервые за все время существования проекта) просканить свой код хоть каким-нибудь статанализатором. Им под руку попался http://cppcheck.sourceforge.net/... |
|||||||
16.02.2014
|
|||||||
Здравствуйте, Аноним, Вы писали:
А>Мне кажется второй способ более простой и удобнее для чтения отладки и т.п. А>Есть ли какая-то эффективность у 1го способа или это уже можно считать как устаревший подход ? На нынешнем этапе развития науки и техники устаревшим считается скорее второй подход. Во всех трех вариантах: 1) Begin/End-методы, 2) обертка Task.FromAsync над ними, упомянутая TK и 3) синхронные сетевые вызовы в теле таски, непосредственно вызовы и ожидания ответов действительно происходят в потоках из IO-пула. Но вариант №3 потребляет _еще_один_ поток, в дополнение к уже потребляемым IO-потокам. Т.е. в общем случае требует в два раза больше потоков (=> в два раза больше памяти) и рано или поздно упрется в лимит на их число. Преимущества первых двух вариантов над третьим особенно хорошо видны, если принудительно ограничить размер ThreadPool-а: [c#] class Program { const int CallCount = 30; |
|||||||
25.01.2014
|
|||||||
Сергей, добрый день.
Что ж, я в принципе разобрался со всеми сложностями и напастями, что мне встречались и теперь могу рассказать, что же у меня получилось. На текущий момент, у меня готов первый вариант, из тех, что я описывал, т.е. практически всю работу на себя берет WCF (правда в .Net 4.5 работа так или иначе идет с использованием WIF, но от вас лично не потребует ни строчки кода для WIF — разве что вы начнете делать какие-то кастомные расширения). Для начала, чтобы у нас было единое понимание того, что происходит, позволю себе небольшое описание процесса (см. картинку): 0. Пользователь вводит свои UserName и Password (U/P) 1. Клиент пытается подключиться к WCF Service используя переданные ему U/P. Однако, инфраструктура WCF, анализирует указанные ей настройки и выясняет, что от нее требуется работать по Federation протоколу, а это значит, что вместо прямого обращения WCF Service... |
|||||||
23.12.2013
|
|||||||
Это загадка, которую я недавно публиковал на Twitter и давал коллегам на работе. Пока что её отгадал только один человек — Mads Torgersen (причём почти сразу).
Напишите валидную C# программу, которая содержит следующую последовательность токенов:
и которая остаётся валидной, если мы уберём токен null из этой последовательности, т.е. оставим
|
|||||||