Difference between revisions of "Uno/Spec/Threading-Model"

From Apache OpenOffice Wiki
< Uno‎ | Spec
Jump to: navigation, search
(Rephrased.)
(Replaced Protocol Bridge with Purpose Bridge.)
Line 19: Line 19:
 
; API:
 
; API:
 
; [[Uno/Spec/Purpose Environment | Purpose Environment]]: The different threading types are supported by using [[Uno/Spec/Purpose Environment |Purpose Environments]].
 
; [[Uno/Spec/Purpose Environment | Purpose Environment]]: The different threading types are supported by using [[Uno/Spec/Purpose Environment |Purpose Environments]].
; [[Uno/Spec/Implementation Environment | Implementation Environment]]: The actual threading type can be selected in a [[Uno/Spec/Lanuage Binding | Language Binding]] typical way and is backed by the appropriate [[Uno/Spec/Protocol Bridge | Protocol Bridge]]. The used [[Uno/Spec/Protocol Bridge | Protocol Bridges]] are the
+
; [[Uno/Spec/Implementation Environment | Implementation Environment]]: The actual threading type can be selected in a [[Uno/Spec/Lanuage Binding | Language Binding]] typical way and is backed by the appropriate [[Uno/Spec/Purpose Bridge | Purpose Bridge]]. The used [[Uno/Spec/Purpose Bridge | Purpose Bridges]] are the
 
:* [[Uno/Spec/Thread Unsafety Bridge | Thread Unsafety Bridge]] for [[Uno/Spec/Thread Unsafe | Thread Unsafe]] code and the
 
:* [[Uno/Spec/Thread Unsafety Bridge | Thread Unsafety Bridge]] for [[Uno/Spec/Thread Unsafe | Thread Unsafe]] code and the
 
:* [[Uno/Spec/Thread Affinity Bridge | Thread Affinty Bridge]]  for [[Uno/Spec/Thread Affine | Thread Affine]] code. [[Uno/Spec/Thread Safe | Thread Safe]] code does not need to be backed, as this is the default for plain code, these also preserves compatibility with previous UNO versions.  
 
:* [[Uno/Spec/Thread Affinity Bridge | Thread Affinty Bridge]]  for [[Uno/Spec/Thread Affine | Thread Affine]] code. [[Uno/Spec/Thread Safe | Thread Safe]] code does not need to be backed, as this is the default for plain code, these also preserves compatibility with previous UNO versions.  

Revision as of 07:20, 2 May 2006

version: 9385
state: draft
type: specification

UNO Threading Model

Feature
The UNO Runtime provides support for implementing
Code.
The threading type of any code can be specified appropriately. The Thread Unsafe type is the default type for any implementation.
Rationale
API
Purpose Environment
The different threading types are supported by using Purpose Environments.
Implementation Environment
The actual threading type can be selected in a Language Binding typical way and is backed by the appropriate Purpose Bridge. The used Purpose Bridges are the
Code may as well be declared Thread Free, so that it may be used from any other kind of code.
Environment Stack
The current (purpose) environment does not only vary with the implementation language (e.g. Java or C++), but also with the executed codes declared threading type. An API for accessing the current environment is provided.
Cascaded Mapping
Purpose environments may be passed to the Runtime for accessing cascaded mappings ("gcc3" => "java:mutex:debug").
Dependencies
Compatibility Issues
None.
Personal tools