Concurrency.h

См. документацию.
00001 /*
00002  * CntmLib - Подсчет ссылок, потоки, синхронизация, асинхронные процедуры, события
00003  * Copyright (c) 2005, Овсеевич Роман, @mail.ru
00004  * _______________________________________________________________________________
00005  * Разрешено свободное использование, копирование, распространение, изменение
00006  * (изменение сведений об авторских правах запрещено). Запрещена продажа и 
00007  * включение всей библиотеки или ее частей в другие библиотеки. В сведениях об
00008  * авторских правах на программу (или сведениях о программе, об авторах, 
00009  * использованных средствах разработки и т.д.) должна быть указана информация
00010  * о библиотеке CntmLib, ее авторе и, возможно, сайте или email'е.
00011  * Библиотека поставляется "как есть", без каких-либо гарантий со стороны автора.
00012  */ 
00013 
00014 /**
00015  * \defgroup Concurrency Cntm.Concurrency
00016  * Данный пакет содержит базовые классы, связанные с единицами выполнения. Единица выполнения это код (обычно метод объекта), выполняющийся, в определенной степени, автономно (по времени) от кода, создавшего единицу выполнения. К единицам выполнения относятся асинхронные процедуры и потоки активных объектов (см. документацию по пакетам асинхронных процедур и  активных объектов).
00017  *
00018  * Базовый класс единицы выполнения - Cntm::ExecutionUnit. Потомки этого класса предоставляют сервис по созданию конкретных типов единиц выполнения. Взаимодействие с единицами выполнения осуществляется через специальные объекты - хэндлы, которые во многом схожи со ссылочными указателями. Класс Cntm::ExecutionUnitHandle является базовым классом хэндлов единиц выполнения.
00019  * 
00020  * В некоторых случаях (например, для активных объектов) единица выполнения не хранит ссылочный указатель на объект, метод которого выполняет. Для получения ссылочного указателя из обычного (например, из this) можно применять т.н. Using-объекты, которые комбинируют преобразование и хранение ссылочного указателя на объект с проверкой требования завершения текущей единицы выполнения и состояния объекта (объект не должен находиться в удаляемом состоянии). Для этого служат классы Cntm::Using, Cntm::UsingSync и Cntm::UsingReentrantSync. Последние два помимо всего прочего производят вход в синхропространство.
00021  */
00022 
00023 #include <Cntm/Concurrency/ExecutionUnit.h>
00024 #include <Cntm/Concurrency/ExecutionUnitHandle.h>
00025 #include <Cntm/Concurrency/TerminatingSignal.h>
00026 #include <Cntm/Concurrency/UsingScopes/Using.h>
00027 #include <Cntm/Concurrency/UsingScopes/UsingSync.h>
00028 #include <Cntm/Concurrency/UsingScopes/UsingReentrantSync.h>

SourceForge.net Logo
© Овсеевич Р.В. Документация по CntmLib 1.1.4 от 28 May 2008. Создано системой  doxygen 1.5.3