Re: sharing a dict between child processes

"Scott, Barry" <[email protected]> Wed, 6 Nov 2019 17:07:17 +0000
Newsgroups gmane.comp.python.twisted
Message-ID <21852660.zPVIgxvv2X@barry-scott-desktop>
T24gV2VkbmVzZGF5LCA2IE5vdmVtYmVyIDIwMTkgMTY6NDM6NTIgR01UIFdhcWFyIEtoYW4gd3Jv
dGU6Cj4gSGkgQmFycnksCj4gICAgICAgICBUaGFua3MgZm9yIHRoZSByZXNwb25zZS4gV2hlcmUg
Y2FuIEkgcmVhZCBtb3JlIGFib3V0ICgxKS4gSXQgc2VlbXMKPiBsaWtlIHRoYXQgaXMgc29tZXRo
aW5nIEkgbmVlZCB0byBleHBsb3JlLgo+IEFzIHdlIGFscmVhZHkgaGF2ZSAoMikgKGNhY2hlIGZv
ciBlYWNoIHByb2Nlc3MpLgo+IFRoYW5rcyBhZ2FpbiBmb3IgeW91ciBoZWxwLgoKV2UgdXNlIHRo
ZSBVRFMgKFVuaXggZG9tYWluIHNvY2tldHMpIHRvIHRhbGsgdG8gYSBtYXN0ZXIgcHJvY2Vzcy4K
VHdpc3RlZCBoYXMgc3VwcG9ydCBmb3IgdGhpcy4gQnV0IHlvdSBuZWVkIGEgc21hbGwgcGF0Y2gg
dG8gYXZvaWQgZGF0YSBsb3NlLgoKVURTIGRvZXMgbm90IGxvc2UgZGF0YSBhbmQgaXMgbWVzc2Fn
ZSBiYXNlZCwgbm90IGJ5dGVzIGJhc2VkLiBXZQp1c2UgcGlja2xlIHRvIGVuY29kZSByZXF1ZXN0
cyBhbmQgcmVzcG9uc2VzLgoKQmFycnkKClRoZSBwYXRjaCBpczoKCi0tLSBUd2lzdGVkLTE4LjQu
MC5vcmlnL3NyYy90d2lzdGVkL2ludGVybmV0L3VuaXgucHkub3JpZyAgICAgICAyMDE4LTA4LTAx
IAoxMjo0NTozOC43MTExMTU0MjUgKzAxMDAKKysrIFR3aXN0ZWQtMTguNC4wL3NyYy90d2lzdGVk
L2ludGVybmV0L3VuaXgucHkgMjAxOC0wOC0wMSAxMjo0NTo0Ny45NDYxMTUxMjMgCiswMTAwCkBA
IC01MDksMTEgKzUwOSw2IEBACiAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYud3JpdGUoZGF0
YWdyYW0sIGFkZHJlc3MpCiAgICAgICAgICAgICBlbGlmIG5vID09IEVNU0dTSVpFOgogICAgICAg
ICAgICAgICAgIHJhaXNlIGVycm9yLk1lc3NhZ2VMZW5ndGhFcnJvcigibWVzc2FnZSB0b28gbG9u
ZyIpCi0gICAgICAgICAgICBlbGlmIG5vID09IEVBR0FJTjoKLSAgICAgICAgICAgICAgICAjIG9o
LCB3ZWxsLCBkcm9wIHRoZSBkYXRhLiBUaGUgb25seSBkaWZmZXJlbmNlIGZyb20gVURQCi0gICAg
ICAgICAgICAgICAgIyBpcyB0aGF0IFVEUCB3b24ndCBldmVyIG5vdGljZS4KLSAgICAgICAgICAg
ICAgICAjIFRPRE86IGFkZCBUQ1AtbGlrZSBidWZmZXJpbmcKLSAgICAgICAgICAgICAgICBwYXNz
CiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHJhaXNlCgpZb3UgdGhlbiBoYXZl
IHRvIGhhbmRsZSB0aGUgRUFHQUlOIGVycm9yIGFuZCBkbyByZXRyaWVzIHlvdXJzZWxmLgpBcyBp
dCBzdGFuZHMgdGhlIHBhdGNoIGlzIG5vdCBnb29kIGVub3VnaCB0byBwdXQgaW50byB0d2lzdGVk
IGFzIGEKZnVsbCBmaXggd291bGQgbmVlZCB0byBwdXQgdGhlIGhhbmRsaW5nIG9mIHRoZSByZXRy
aWVzIGludG8gdHdpc3RlZC4KCkkgZ3Vlc3MgKDIpIGRvZXMgbm90IHdvcmsgZm9yIHlvdSBhcyB0
aGUgY2FjaGUgaGl0IHJhdGUgaXMgbG93CmFuZCB5b3UgbmVlZCB0byBzaGFyZSB0aGUgY2FjaGUg
dG8gZ2V0IGEgYmVuZWZpdC4gQ2FjaGUgZW50cmllcwpvbmx5IGdldCB1c2VkIGEgZmV3IHRpbWVz
PwoKSW4gb3VyIGNhc2UgdGhlIGhpdCByYXRlIGlzIGhpZ2ggKDk5JSspIGFuZCB3ZSBqdXN0IHBh
eSB0aGUgY29zdCBvZgpwb3B1bGF0aW5nIHRoZSBjYWNoZXMgb24gcHJvY2VzcyBzdGFydCB1cCwg
d2hpY2ggZW5kcyB1cCBiZWluZwpub2lzZS4KCkJhcnJ5Cgo+IAo+IE9uIFdlZCwgTm92IDYsIDIw
MTkgYXQgODozOSBBTSBTY290dCwgQmFycnkgPGJhcnJ5LnNjb3R0QGZvcmNlcG9pbnQuY29tPgo+
IAo+IHdyb3RlOgo+ID4gT24gV2VkbmVzZGF5LCA2IE5vdmVtYmVyIDIwMTkgMTQ6MjE6MjIgR01U
IE1hYXJ0ZW4gdGVyIEh1dXJuZSB3cm90ZToKPiA+ID4gT24gV2VkbmVzZGF5LCA2IE5vdmVtYmVy
IDIwMTkgMDc6MTk6NTYgQ0VUIFdhcWFyIEtoYW4gd3JvdGU6Cj4gPiA+ID4gSGksCj4gPiA+ID4g
U28sIEkgYW0gd3JpdGluZyBhIHR3aXN0ZWQgc2VydmVyLiBUaGlzIHNlcnZlciBzcGF3biBtdWx0
aXBsZSBjaGlsZAo+ID4gPiA+IHByb2Nlc3NlcyB1c2luZyByZWFjdG9yIHNwYXduUHJvY2VzcyB0
aGF0IGluaXRpYWxpemVzIGEgcHJvY2Vzcwo+ID4gPiA+IHByb3RvY29sLgo+ID4gPiA+IAo+ID4g
PiA+IE5vdywgZWFjaCBvZiB0aGUgY2hpbGRwcm9jZXNzIHJlY2VpdmVzIHNvbWUgUkVTVCByZXF1
ZXN0cy4gRWFjaAo+ID4gPiA+IHByb2Nlc3MgaGFzIGEgZGljdCB0aGF0IGFjdHMgYXMgY2FjaGUu
Cj4gPiA+ID4gTm93LCBJIHdhbnQgdG8gc2hhcmUgZGljdCBhY3Jvc3MgcHJvY2Vzc2VzLgo+ID4g
PiA+IEluIGdlbmVyYWwsIHB5dGhvbiBoYXMgU2hhcmVkTWVtb3J5TWFuYWdlciBpbiBtdWx0aXBy
b2Nlc3NpbmcgbW9kdWxlCj4gPiA+ID4gd2hpY2ggd291bGQgaGF2ZSBoZWxwZWQuCj4gPiA+ID4g
aHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvMy9saWJyYXJ5L211bHRpcHJvY2Vzc2luZy5zaGFyZWRf
bWVtb3J5Lmh0bWwjbQo+ID4gPiA+IHVsdGlwcm9jZXNzaW5nLm1hbmFnZXJzLlNoYXJlZE1lbW9y
eU1hbmFnZXIuU2hhcmVkTWVtb3J5IEJ1dCBzaW5jZSBJCj4gPiA+ID4gYW0gdXNpbmcgdHdpc3Rl
ZCBpbnRlcm5hbCBwcm9jZXNzIGltcGxlbWVudGF0aW9uLCBob3cgZG8gSSBzaGFyZSB0aGlzCj4g
PiA+ID4gZGljdCBhY3Jvc3MgdGhlIHByb2Nlc3NlcyBzbyB0aGF0IGFsbCB0aGUgcHJvY2Vzc2Vz
IHVzZSB0aGlzIGNvbW1vbgo+ID4gPiA+IGNhY2hlPwo+ID4gPiAKPiA+ID4gS2VlcGluZyBhIGRp
Y3Rpb25hcnkgaW4gU2hhcmVkTWVtb3J5TWFuYWdlciBzZWVtcyBmYXIgZnJvbSB0cml2aWFsLiBJ
Cj4gPiA+IGRvbid0IHRoaW5rIHlvdSBjYW4gYWxsb2NhdGUgYXJiaXRyYXJ5IFB5dGhvbiBvYmpl
Y3RzIGluIHRoZSBzaGFyZWQKPiA+ID4gbWVtb3J5IGFuZCBldmVuIGlmIHlvdSBjb3VsZCwgeW91
IHdvdWxkIHJ1biBpbnRvIHByb2JsZW1zIHdoZW4gb25lCj4gPiA+IHByb2Nlc3MgbXV0YXRlcyB0
aGUgZGljdGlvbmFyeSB3aGlsZSBhbm90aGVyIGlzIGxvb2tpbmcgdXAgc29tZXRoaW5nIG9yCj4g
PiA+IGFsc28gbXV0YXRpbmcgaXQuCj4gPiA+IAo+ID4gPiBJdCBjb3VsZCBpbiB0aGVvcnkgd29y
ayBpZiB5b3UgaW1wbGVtZW50IGEgY3VzdG9tIGxvY2stbGVzcyBkaWN0aW9uYXJ5LAo+ID4gPiBi
dXQgdGhhdCB3b3VsZCBiZSBhIGxvdCBvZiB3b3JrIGFuZCBoYXJkIHRvIGdldCByaWdodC4gQWxz
byBoYXZpbmcKPiA+ID4gc2hhcmVkIG1lbW9yeSBtdXRhdGlvbnMgYmUgc3luY2VkIGJldHdlZW4g
bXVsdGlwbGUgQ1BVIGNvcmVzIGNvdWxkCj4gPiA+IGRlZ3JhZGUgcGVyZm9ybWFuY2UsIHNpbmNl
IGtlZXBpbmcgY29yZS1sb2NhbCBDUFUgY2FjaGVzIGluIHN5bmMgaXMKPiA+ID4gZXhwZW5zaXZl
Lgo+ID4gPiAKPiA+ID4gV291bGQgaXQgYmUgYW4gb3B0aW9uIHRvIGhhdmUgb25seSBvbmUgcHJv
Y2VzcyBhY2NlcHQgdGhlIFJFU1QgcmVxdWVzdHMsCj4gPiA+IGNoZWNrIHdoZXRoZXIgdGhlIHJl
c3VsdCBpcyBpbiB0aGUgY2FjaGUgYW5kIG9ubHkgZGlzdHJpYnV0ZSB3b3JrIHRvIHRoZQo+ID4g
PiBvdGhlciBwcm9jZXNzZXMgaWYgeW91IGdldCBhIGNhY2hlIG1pc3M/IFR5cGljYWxseSB0aGUg
Y2FzZSB3aGVyZSBhbgo+ID4gPiBhbnN3ZXIgaXMgY2FjaGVkIGlzIHByZXR0eSBmYXN0LCBzbyBw
ZXJoYXBzIHlvdSBkb24ndCBuZWVkIG11bHRpcGxlCj4gPiA+IHByb2Nlc3NlcyB0byBoYW5kbGUg
aW5jb21pbmcgcmVxdWVzdHMuCj4gPiAKPiA+IFdlIGhhdmUgdXNlZCBhIGNvdXBsZSBvZiB3YXlz
IHRvIGNhY2hlLgo+ID4gMS4gVXNlIGEgc2luZ2xldG9uIHByb2Nlc3MgdG8gaG9sZCB0aGUgY2Fj
aGUgYW5kIGFzayBpdCwgdmlhIElQQywgZm9yCj4gPiBhbnN3ZXJzCj4gPiBmcm9tIHRoZSBvdGhl
ciBwcm9jZXNzLgo+ID4gMi4gaGF2ZSBhIGNhY2hlIGluIGVhY2ggcHJvY2Vzcwo+ID4gCj4gPiBC
YXJyeQo+ID4gCj4gPiA+IEJ5ZSwKPiA+ID4gCj4gPiA+ICAgICAgICAgICAgICAgTWFhcnRlbgo+
ID4gPiAKPiA+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KPiA+ID4gVHdpc3RlZC1QeXRob24gbWFpbGluZyBsaXN0Cj4gPiA+IFR3aXN0ZWQtUHl0aG9u
QHR3aXN0ZWRtYXRyaXguY29tCj4gPiA+IGh0dHBzOi8vdHdpc3RlZG1hdHJpeC5jb20vY2dpLWJp
bi9tYWlsbWFuL2xpc3RpbmZvL3R3aXN0ZWQtcHl0aG9uCj4gPiAKPiA+IF9fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPiBUd2lzdGVkLVB5dGhvbiBtYWls
aW5nIGxpc3QKPiA+IFR3aXN0ZWQtUHl0aG9uQHR3aXN0ZWRtYXRyaXguY29tCj4gPiBodHRwczov
L3R3aXN0ZWRtYXRyaXguY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby90d2lzdGVkLXB5dGhv
bgoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVHdp
c3RlZC1QeXRob24gbWFpbGluZyBsaXN0ClR3aXN0ZWQtUHl0aG9uQHR3aXN0ZWRtYXRyaXguY29t
Cmh0dHBzOi8vdHdpc3RlZG1hdHJpeC5jb20vY2dpLWJpbi9tYWlsbWFuL2xpc3RpbmZvL3R3aXN0
ZWQtcHl0aG9uCg==