Xref: utzoo comp.lang.c++:9327 comp.sys.isis:390 comp.databases:6996 comp.os.mach:513 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!apple!brutus.cs.uiuc.edu!wuarchive!swbatl!cbs From: cbs@swbatl.sbc.com (Brad Slaten 529-7636) Newsgroups: comp.lang.c++,comp.sys.isis,comp.databases,comp.os.mach Subject: Data sharing among lightweight tasks Keywords: ISIS, distributed objects, lightweight tasks Message-ID: <1990Aug30.164153.25008@swbatl.sbc.com> Date: 30 Aug 90 16:41:53 GMT Organization: Southwestern Bell Lines: 26 Our current application is using an object-oriented implementation under the ISIS lightweight tasking library and Unix. We have provided an interface to the Inter-process Communication (IPC) mechanism such that the application does not know when an object with which it is communicating requires IPC. The problem which occurs is that in making the IPC transparent, the lightweight task context switch is also transparent. The problem results from the fact that certain objects are shared among multiple tasks. When a context switch occurs from one task to another, any or all shared objects may be modified by a different task without the initial task having knowledge of this. Any and all thoughts (regardless of how wild) on this problem, or alternate approaches are welcome. Please send via e-mail. Cheers Brad Slaten P.S. We have thought about placing automatic checks on all shared objects upon return from the transparent IPC, but do not care to do recursive checks on objects for each IPC. We have considered making shared objects resources, but have not come up with a good solution to the deadlock problem. -- cbs@swbatl: Brad Slaten - 529-7636