Читаем Язык программирования C#9 и платформа .NET5 полностью

Фильтрация данных с использованием метода OfТуре<Т>

Исследование операций запросов LINQ

Базовый синтаксис выборки

Получение подмножества данных

Проецирование в новые типы данных

Проецирование в другие типы данных

Подсчет количества с использованием класса Enumerable

Изменение порядка следования элементов в результирующих наборах на противоположный

Выражения сортировки

LINQ как лучшее средство построения диаграмм Венна

Устранение дубликатов

Операции агрегирования LINQ

Внутреннее представление операторов запросов LINQ

Построение выражений запросов с применением операций запросов

Построение выражений запросов с использованием типа Enumerable и лямбда-выражений

Построение выражений запросов с использованием типа Enumerable и анонимных методов

Построение выражений запросов с использованием типа Enumerable и низкоуровневых делегатов

Резюме

Глава 14

Роль процесса Windows

Роль потоков

Взаимодействие с процессами используя платформу .NET Core

Перечисление выполняющихся процессов

Исследование конкретного процесса

Исследование набора потоков процесса

Исследование набора модулей процесса

Запуск и останов процессов программным образом

Управление запуском процесса с использованием класса ProcessStartInfo

Использование команд операционной системы с классом ProcessStartInfo

Домены приложений .NET

Класс System.AppDomain

Взаимодействие со стандартным доменом приложения

Перечисление загруженных сборок

Изоляция сборок с помощью контекстов загрузки приложений

Итоговые сведения о процессах, доменах приложений и контекстах загрузки

Резюме

Глава 15

Отношения между процессом, доменом приложения, контекстом и потоком

Сложность, связанная с параллелизмом

Роль синхронизации потоков

Пространство имен System.Threading

Класс System.Threading.Thread

Получение статистических данных о текущем потоке выполнения

Свойство Name

Свойство Priority

Ручное создание вторичных потоков

Работа с делегатом ThreadStart

Работа с делегатом ParametrizedThreadStart

Класс AutoResetEvent

Потоки переднего плана и фоновые потоки

Проблема параллелизма

Синхронизация с использованием ключевого слова lock языка C#

Синхронизация с использованием типа System.Threading.Monitor

Синхронизация с использованием типа System.Threading.Interlocked

Программирование с использованием обратных вызовов Timer

Использование автономного отбрасывания (нововведение в версии 7.0)

Класс ThreadPool

Параллельное программирование с использованием TPL

Пространство имен System.Threading.Tasks

Роль класса Parallel

Обеспечение параллелизма данных с помощью класса Parallel

Перейти на страницу:

Похожие книги

97 этюдов для архитекторов программных систем
97 этюдов для архитекторов программных систем

Успешная карьера архитектора программного обеспечения требует хорошего владения как технической, так и деловой сторонами вопросов, связанных с проектированием архитектуры. В этой необычной книге ведущие архитекторы ПО со всего света обсуждают важные принципы разработки, выходящие далеко за пределы чисто технических вопросов.?Архитектор ПО выполняет роль посредника между командой разработчиков и бизнес-руководством компании, поэтому чтобы добиться успеха в этой профессии, необходимо не только овладеть различными технологиями, но и обеспечить работу над проектом в соответствии с бизнес-целями. В книге более 50 архитекторов рассказывают о том, что считают самым важным в своей работе, дают советы, как организовать общение с другими участниками проекта, как снизить сложность архитектуры, как оказывать поддержку разработчикам. Они щедро делятся множеством полезных идей и приемов, которые вынесли из своего многолетнего опыта. Авторы надеются, что книга станет источником вдохновения и руководством к действию для многих профессиональных программистов.

Билл де Ора , Майкл Хайгард , Нил Форд

Программирование, программы, базы данных / Базы данных / Программирование / Книги по IT