Intra-Object versus Inter-Object: Concurrency and Reasoning in Creol
نویسندگان
چکیده
In thread-based object-oriented languages, synchronous method calls usually provide the mechanism to transfer control from caller to callee, blocking the caller until the call is completed. This model of control flow is well-suited for sequential and tightly coupled systems but may be criticized in the concurrent and distributed setting, not only for unnecessary delays but also for the reasoning complexity of multithreaded programs. Concurrent objects propose an alternative to multithread concurrency for object-oriented languages, in which each object encapsulates a thread of control and communication between objects is asynchronous. Creol is a formally defined modeling language for concurrent objects which clearly separates intra-object scheduling from inter-object communication by means of interface encapsulation, asynchronous method calls, and internal processor release points. This separation of concerns provides a very clean model of concurrency which significantly simplifies reasoning for highly parallel and distributed object-oriented systems. This paper gives an example-driven introduction to these basic features of Creol and discusses how this separation of concerns influences analysis of Creol models.
منابع مشابه
Inter-Object and Intra-Object Concurrency in Creol
In traditional object-oriented languages, method calls are synchronous: The thread of control is passed from the caller to the callee, blocking the caller until the call is finished. This suits tightly coupled systems but leads to unnecessary delays in distributed environments, where objects are dispersed geographically. Another problem shared by thread-based object-oriented languages is that c...
متن کاملTowards a light-weight approach for concurrent active objects in Java
The combination of object-orientation and concurrency can lead to severe programming difficulties. The Actor model has lately been used with success in object-oriented languages such as Scala, giving simpler synchronization and communication mechanisms. While Scala encourages functional style actor programming, the Creol language offers imperative style actor programming, and facilitates simple...
متن کاملOnline multiple people tracking-by-detection in crowded scenes
Multiple people detection and tracking is a challenging task in real-world crowded scenes. In this paper, we have presented an online multiple people tracking-by-detection approach with a single camera. We have detected objects with deformable part models and a visual background extractor. In the tracking phase we have used a combination of support vector machine (SVM) person-specific classifie...
متن کاملConcurrency in CoOperative Objects
CoOperative Objects (COOs) are a concurrent object-oriented modelling and programming language, which uses the Petri net theory to define the concurrency within each object, among objects, and also the inter-object asynchronous communication. SYROCO is a C++ implementation of CoOperative Objects which proves to be efficient and convenient enough to support real size applications. The paper aims...
متن کاملCreol: A type-safe object-oriented model for distributed concurrent systems
Object-oriented distributed computing is becoming increasingly important for critical infrastructure in society. In standard object-oriented models, objects synchronize on method calls. These models may be criticized in the distributed setting for their tight coupling of communication and synchronization; network delays and instabilities may locally result in much waiting and even deadlock. The...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Electr. Notes Theor. Comput. Sci.
دوره 243 شماره
صفحات -
تاریخ انتشار 2009