🗊Презентация Потоки. Асинхронное и параллельное программирование

Нажмите для полного просмотра!
Потоки. Асинхронное и параллельное программирование, слайд №1Потоки. Асинхронное и параллельное программирование, слайд №2Потоки. Асинхронное и параллельное программирование, слайд №3Потоки. Асинхронное и параллельное программирование, слайд №4Потоки. Асинхронное и параллельное программирование, слайд №5Потоки. Асинхронное и параллельное программирование, слайд №6Потоки. Асинхронное и параллельное программирование, слайд №7Потоки. Асинхронное и параллельное программирование, слайд №8Потоки. Асинхронное и параллельное программирование, слайд №9Потоки. Асинхронное и параллельное программирование, слайд №10Потоки. Асинхронное и параллельное программирование, слайд №11Потоки. Асинхронное и параллельное программирование, слайд №12Потоки. Асинхронное и параллельное программирование, слайд №13Потоки. Асинхронное и параллельное программирование, слайд №14Потоки. Асинхронное и параллельное программирование, слайд №15Потоки. Асинхронное и параллельное программирование, слайд №16Потоки. Асинхронное и параллельное программирование, слайд №17Потоки. Асинхронное и параллельное программирование, слайд №18Потоки. Асинхронное и параллельное программирование, слайд №19Потоки. Асинхронное и параллельное программирование, слайд №20Потоки. Асинхронное и параллельное программирование, слайд №21Потоки. Асинхронное и параллельное программирование, слайд №22Потоки. Асинхронное и параллельное программирование, слайд №23Потоки. Асинхронное и параллельное программирование, слайд №24Потоки. Асинхронное и параллельное программирование, слайд №25Потоки. Асинхронное и параллельное программирование, слайд №26Потоки. Асинхронное и параллельное программирование, слайд №27Потоки. Асинхронное и параллельное программирование, слайд №28Потоки. Асинхронное и параллельное программирование, слайд №29

Содержание

Вы можете ознакомиться и скачать презентацию на тему Потоки. Асинхронное и параллельное программирование. Доклад-сообщение содержит 29 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Потоки. Асинхронное и параллельное программирование
Описание слайда:
Потоки. Асинхронное и параллельное программирование

Слайд 2





Формы параллельных вычислений
Конкурентное исполнение (concurrency)  - это наиболее общий термин, который говорит, что одновременно выполняется более одной задачи.
Параллельное исполнение (parallel execution) подразумевает наличие более одного вычислительного устройства (например, процессора), которые будут одновременно выполнять несколько задач.
Описание слайда:
Формы параллельных вычислений Конкурентное исполнение (concurrency)  - это наиболее общий термин, который говорит, что одновременно выполняется более одной задачи. Параллельное исполнение (parallel execution) подразумевает наличие более одного вычислительного устройства (например, процессора), которые будут одновременно выполнять несколько задач.

Слайд 3





Формы параллельных вычислений
Многопоточное исполнение (multithreading) - это один из способов реализации конкурентного исполнения путем выделения абстракции "рабочего потока" (worker thread).
Асинхронное исполнение (asynchrony) подразумевает, что операция может быть выполнена кем-то на стороне: удаленным веб-узлом, сервером или другим устройством за пределами текущего вычислительного устройства.
Описание слайда:
Формы параллельных вычислений Многопоточное исполнение (multithreading) - это один из способов реализации конкурентного исполнения путем выделения абстракции "рабочего потока" (worker thread). Асинхронное исполнение (asynchrony) подразумевает, что операция может быть выполнена кем-то на стороне: удаленным веб-узлом, сервером или другим устройством за пределами текущего вычислительного устройства.

Слайд 4





Многопоточность
Поток (thread) представляет собой независимую последовательность инструкций в программе. 
Многопоточность подразумевает использование множества потоков для обработки данных.
Описание слайда:
Многопоточность Поток (thread) представляет собой независимую последовательность инструкций в программе.  Многопоточность подразумевает использование множества потоков для обработки данных.

Слайд 5





Задачи многопоточности
Выполнение долгой задачи в отдельном потоке;
Освобождение интерфейса на время выполнения задачи.
Описание слайда:
Задачи многопоточности Выполнение долгой задачи в отдельном потоке; Освобождение интерфейса на время выполнения задачи.

Слайд 6





Пространство имен System.Threading
Пространство имен System.Threading содержит классы и интерфейсы, которые дают возможность программировать в многопоточном режиме. 
Описание слайда:
Пространство имен System.Threading Пространство имен System.Threading содержит классы и интерфейсы, которые дают возможность программировать в многопоточном режиме. 

Слайд 7





Отдельный поток - класс Thread
Класс Thread определяет ряд методов и свойств, которые позволяют управлять потоком и получать информацию о нем. Основные свойства класса:
Статическое свойство CurrentThread возвращает ссылку на выполняемый поток
Свойство IsAlive указывает, работает ли поток в текущий момент
Свойство IsBackground указывает, является ли поток фоновым
Свойство Name содержит имя потока
Свойство Priority хранит приоритет потока - значение перечисления ThreadPriority
Свойство ThreadState возвращает состояние потока - одно из значений перечисления ThreadState
Описание слайда:
Отдельный поток - класс Thread Класс Thread определяет ряд методов и свойств, которые позволяют управлять потоком и получать информацию о нем. Основные свойства класса: Статическое свойство CurrentThread возвращает ссылку на выполняемый поток Свойство IsAlive указывает, работает ли поток в текущий момент Свойство IsBackground указывает, является ли поток фоновым Свойство Name содержит имя потока Свойство Priority хранит приоритет потока - значение перечисления ThreadPriority Свойство ThreadState возвращает состояние потока - одно из значений перечисления ThreadState

Слайд 8





Отдельный поток - класс Thread
Методы класса Thread:
Статический метод Sleep останавливает поток на определенное количество миллисекунд
Метод Abort уведомляет среду CLR о том, что надо прекратить поток, однако прекращение работы потока происходит не сразу, а только тогда, когда это становится возможно. Метод Join блокирует выполнение вызвавшего его потока до тех пор, пока не завершится поток, для которого был вызван данный метод
Метод Resume возобновляет работу ранее приостановленного потока
Метод Start запускает поток
Описание слайда:
Отдельный поток - класс Thread Методы класса Thread: Статический метод Sleep останавливает поток на определенное количество миллисекунд Метод Abort уведомляет среду CLR о том, что надо прекратить поток, однако прекращение работы потока происходит не сразу, а только тогда, когда это становится возможно. Метод Join блокирует выполнение вызвавшего его потока до тех пор, пока не завершится поток, для которого был вызван данный метод Метод Resume возобновляет работу ранее приостановленного потока Метод Start запускает поток

Слайд 9





Получение информации о потоке
Описание слайда:
Получение информации о потоке

Слайд 10





Статус потока - перечислении ThreadState
Aborted: поток остановлен, но пока еще окончательно не завершен
AbortRequested: для потока вызван метод Abort, но остановка потока еще не произошла
Background: поток выполняется в фоновом режиме
Running: поток запущен и работает (не приостановлен)
Stopped: поток завершен
StopRequested: поток получил запрос на остановку
Suspended: поток приостановлен
SuspendRequested: поток получил запрос на приостановку
Unstarted: поток еще не был запущен
WaitSleepJoin: поток заблокирован в результате действия методов Sleep или Join
Описание слайда:
Статус потока - перечислении ThreadState Aborted: поток остановлен, но пока еще окончательно не завершен AbortRequested: для потока вызван метод Abort, но остановка потока еще не произошла Background: поток выполняется в фоновом режиме Running: поток запущен и работает (не приостановлен) Stopped: поток завершен StopRequested: поток получил запрос на остановку Suspended: поток приостановлен SuspendRequested: поток получил запрос на приостановку Unstarted: поток еще не был запущен WaitSleepJoin: поток заблокирован в результате действия методов Sleep или Join

Слайд 11





Работа с потоком
Описание слайда:
Работа с потоком

Слайд 12





Работа с параметрами
Описание слайда:
Работа с параметрами

Слайд 13





Синхронизация потоков
Для синхронизации используется ключевое слово lock. Оператор lock определяет блок кода, внутри которого весь код блокируется и становится недоступным для других потоков до завершения работы текущего потока. 
Описание слайда:
Синхронизация потоков Для синхронизации используется ключевое слово lock. Оператор lock определяет блок кода, внутри которого весь код блокируется и становится недоступным для других потоков до завершения работы текущего потока. 

Слайд 14


Потоки. Асинхронное и параллельное программирование, слайд №14
Описание слайда:

Слайд 15





Пространство имен System.Threading.Tasks
Данная библиотека позволяет распараллелить задачи и выполнять их сразу на нескольких процессорах, если на целевом компьютере имеется несколько ядер.
Описание слайда:
Пространство имен System.Threading.Tasks Данная библиотека позволяет распараллелить задачи и выполнять их сразу на нескольких процессорах, если на целевом компьютере имеется несколько ядер.

Слайд 16





Класс Task
Данный класс описывает отдельную задачу, которая запускается в отдельном потоке.
Класс Task в качестве параметра принимает делегат Action. Этот делегат имеет определение public delegate void Action() . 
Описание слайда:
Класс Task Данный класс описывает отдельную задачу, которая запускается в отдельном потоке. Класс Task в качестве параметра принимает делегат Action. Этот делегат имеет определение public delegate void Action() . 

Слайд 17


Потоки. Асинхронное и параллельное программирование, слайд №17
Описание слайда:

Слайд 18





Ожидание выполнения
Если необходимо дождаться выполнения задачи, то используют метод – Wait().
Описание слайда:
Ожидание выполнения Если необходимо дождаться выполнения задачи, то используют метод – Wait().

Слайд 19





Работа с класом Task
Конструктор класса Task принимает в качестве параметра делегат Action или Action<object>.
Свойства:
AsyncState: возвращает объект состояния задачи
CurrentId: возвращает идентификатор текущей задачи
Exception: возвращает объект исключения, возникшего при выполнении задачи
Status: возвращает статус задачи
Описание слайда:
Работа с класом Task Конструктор класса Task принимает в качестве параметра делегат Action или Action<object>. Свойства: AsyncState: возвращает объект состояния задачи CurrentId: возвращает идентификатор текущей задачи Exception: возвращает объект исключения, возникшего при выполнении задачи Status: возвращает статус задачи

Слайд 20


Потоки. Асинхронное и параллельное программирование, слайд №20
Описание слайда:

Слайд 21





Возвращение результата
Описание слайда:
Возвращение результата

Слайд 22





Aсинхронное программирование
Асинхронность позволяет вынести отдельные задачи из основного потока с специальные асинхронные методы или блоки кода. Особенно это актуально в графических программах, где продолжительные задачи могу блокировать интерфейс пользователя.
Описание слайда:
Aсинхронное программирование Асинхронность позволяет вынести отдельные задачи из основного потока с специальные асинхронные методы или блоки кода. Особенно это актуально в графических программах, где продолжительные задачи могу блокировать интерфейс пользователя.

Слайд 23





Асинхронный вызов
Чтобы вызвать делегат в асинхронном режиме необходимо использовать метод BeginInvoke/EndInvoke.
Описание слайда:
Асинхронный вызов Чтобы вызвать делегат в асинхронном режиме необходимо использовать метод BeginInvoke/EndInvoke.

Слайд 24


Потоки. Асинхронное и параллельное программирование, слайд №24
Описание слайда:

Слайд 25





BeginInvoke
Параметры:
Параметры метода вызываемого делегата.
Делегат System.AsyncCallback. AsyncCallback указывает на метод, который будет выполняться в результате завершения работы асинхронного делегата. 
Второй параметр представляет произвольный объект, с помощью которого мы можем передать дополнительную информацию в метод завершения.
Описание слайда:
BeginInvoke Параметры: Параметры метода вызываемого делегата. Делегат System.AsyncCallback. AsyncCallback указывает на метод, который будет выполняться в результате завершения работы асинхронного делегата. Второй параметр представляет произвольный объект, с помощью которого мы можем передать дополнительную информацию в метод завершения.

Слайд 26


Потоки. Асинхронное и параллельное программирование, слайд №26
Описание слайда:

Слайд 27


Потоки. Асинхронное и параллельное программирование, слайд №27
Описание слайда:

Слайд 28





Ключевые слова async и await
В .NET 4.5 во фреймворк были добавлены два новых ключевых слова async и await, цель которых - упростить написание асинхронного кода.
Ключевое слово async указывает, что метод или лямбда-выражение может выполняться асинхронно. А оператор await позволяет остановить текущий метод, пока не завершится работа метода, помеченного как async, не останавливая выполнение потока.
Описание слайда:
Ключевые слова async и await В .NET 4.5 во фреймворк были добавлены два новых ключевых слова async и await, цель которых - упростить написание асинхронного кода. Ключевое слово async указывает, что метод или лямбда-выражение может выполняться асинхронно. А оператор await позволяет остановить текущий метод, пока не завершится работа метода, помеченного как async, не останавливая выполнение потока.

Слайд 29


Потоки. Асинхронное и параллельное программирование, слайд №29
Описание слайда:



Похожие презентации
Mypresentation.ru
Загрузить презентацию