Источник
С новейшим выпуском .NET Framework версии 4.0, в библиотеке классов появилась новая коллекция в System.Collections.Generic — SortedSet<T>.
Две главные особенности SortedSet<T>:
- Не позволено повторение элементов
- поддерживается отсортированный порядок, когда элементы вставлены или удалены без воздействия на производительность.
Чтобы было понятнее, давайте пройдём тесты, которые я сделал.
Read more...
.NET, .NET 4.0, C#, collections, csharp, Development, generic, Programming, SortedSet, Программирование, разработка
Источник
До недавнего времени соблюдался некоторого рода паритет между ростом производительности железа и ростом потребности в этой самой производительности. С одной стороны, потребность в вычислительных ресурсах неуклонно растет, увеличивается количество информации, которую необходимо обработать, растут бизнес-требования и усложняются задачи. С другой же стороны – действует хорошо известный закон Мура, говорящий, что число транзисторов увеличивается в два раза за год, и при этом означенное увеличение, до недавнего времени, фактически приводило к линейному росту производительности.
Read more...
.NET, .NET 4.0, C#, csharp, Development, parallel programming, ParallelLINQ, PLINQ, Programming, Task Parallel Library, TPL, Программирование, разработка
Источник
Создатели .Net Framework в 4.0 версии своего детища очень хорошо потрудились в области параллельного программирования и отладки. Но сам факт наличия возможностей в языке, фреймворке, среде разработки еще ничего не значит. Необходимо применять все это добро. Но есть определенная инерция в умах разработчиков что: параллельные программы можно писать только на С/C++/fortran/ или ну на самый крайний случай на java. В связи с этим разработчики .Net 4.0 выпустили очень интересный набор примеров, расширяющих те примеры которые были доступны в VS2010 training kit. Как пишут сами разработчики этих примеров они может самую капельку бажные. Об этих примерах использования .Net для параллельного программирования я и расскажу далее.
Это лишь небольшой обзор, того что есть в этом наборе примеров.
Сами коды можно скачать тут
Почитать блог разработчиков тут
Read more...
.NET, .NET 4.0, C#, Linq, parallel programming, PLINQ, параллельное программирование
Источник
Пусть имеется некоторая последовательность элементов, которую мы хотим обработать при помощи PLINQ-запроса. При этом есть некоторое количество физических ядер CPU, готовых выполнять рабочие потоки. Как распределить элементы входной коллекции между потоками?
Read more...
.NET 4.0, C#, concurrency, Development, partitioning, pling, Programming, Программирование, разработка