I prefer to explain it this way: when you pass a New object or New collection to a method (subroutine), that object or collection is shared between the 2 methods, caller and callee, because they are running in the same process.
if you execute $1.foo:="bar" in the callee, the object from the caller is also updated, because they are in fact referenced to the same object. if you do the same across processes, i.e. pass a New object or New collection to New process, CALL WORKER or CALL FORM, the object or collection is not shared between the 2 methods, caller and callee, because they are not running in the same process. the best way to share an object or collection between processes is to pass a shared object or shared collection as a parameter. there is no need to use Storage, there is no need to use interprocess variables. you just create a shared object or shared collection, and pass it as an argument to another process or worker. the received object is not a copy, it is a shared reference to the same shared object. Storage is not mandatory, if you always pass shared objects using parameters, which is good practice, according the law of Demeter. https://en.wikipedia.org/wiki/Law_of_Demeter the reason why Storage often pops up in the context of interprocess variables, is because we recognise that in many applications, interprocess variables are casually references all over the place. it is provided as a last resort, a global shared object to which you can attach all your shared objects so that you can access them from anywhere in your code, without using parameters. > 2018/10/21 13:11、lists via 4D_Tech <4d_tech@lists.4d.com>のメール: > > In order to share an object between processes without using an interprocess > variable, you must use the "Storage" container/catalog. ********************************************************************** 4D Internet Users Group (4D iNUG) Archive: http://lists.4d.com/archives.html Options: https://lists.4d.com/mailman/options/4d_tech Unsub: mailto:4d_tech-unsubscr...@lists.4d.com **********************************************************************