You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Verify and document that erlang.call() works from any Python thread,
not just ThreadPoolExecutor workers. The thread worker mechanism already
supported this, but it wasn't documented or tested.
- Add tests for simple threading.Thread calling erlang.call()
- Update C code comments to mention all supported thread types
- Update CHANGELOG to reflect broader thread support
- Add docs/threading.md with usage examples and architecture
%% Create 5 threads, each calling double_it with different values
188
+
Code= <<"
189
+
(lambda: (
190
+
(threads := [__import__('threading').Thread(target=lambda x=x: setattr(t, 'result', __import__('erlang').call('double_it', x))) for x in range(5) for t in [type('T', (), {'result': None})()]]),
191
+
[setattr(threads[i], 'obj', type('T', (), {'result': None})()) for i in range(5)],
192
+
(workers := []),
193
+
[workers.append(type('Worker', (__import__('threading').Thread,), {'result': None, 'run': lambda self, x=x: setattr(self, 'result', __import__('erlang').call('double_it', x))})()) for x in range(5)],
0 commit comments