Thank you .Filed https://github.com/emscripten-core/emscripten/issues/20225 
for the worker termination thing.

On Saturday, September 9, 2023 at 7:54:09 AM UTC+2 Sam Clegg wrote:

> The `INCOMING_MODULE_JS_API` setting is designed to properties that you 
> set on the module before its started.   Its not for exporting things.  That 
> is what the `-sEXPORTED_FUNCTIONS` settings is for.
>
> So you can do `-sEXPORTED_FUNCTIONS=$Pthread` but the members of that 
> object will still be mangled so it doesn't do what you want.  You could 
> always work around this by writing a library function that calls 
> `PThread.terminateAllThreads` and then exporting that function.  However, 
> as you have guessed, terminateAllThreads should be considered internal, and 
> I think `exit()` is function you are looking for.   Perhaps there is a bug 
> where `exit` isn't doing the right thing for you. Could you open a bug if 
> that isn't doing what you need it to?
>
> On Fri, Sep 8, 2023 at 7:09 PM 'Maksim Ivanov' via emscripten-discuss <
> emscripte...@googlegroups.com> wrote:
>
>> I guess one workaround is to inject code that creates a Module.something 
>> alias via --post-js.
>>
>> But I'm still wondering whether INCOMING_MODULE_JS_API or something 
>> similar could provide a more direct way.
>>
>>
>> On Saturday, September 9, 2023 at 3:34:06 AM UTC+2 Maksim Ivanov wrote:
>>
>>> Hello,
>>>
>>> Is it possible to preserve PThread.* functions, like 
>>> "terminateAllThreads", on the Module object when 
>>> using INCOMING_MODULE_JS_API and --closure?
>>>
>>> I tried specifying "terminateAllThreads" or "_terminateAllThreads" or 
>>> "PThread.terminateAllThreads" in -sINCOMING_MODULE_JS_API, however all of 
>>> the PThread's properties seem to remain mangled.
>>>
>>> P.S. If these functions aren't intended to be used by client code, then 
>>> what would be a better way to force-shutdown pthread workers when one wants 
>>> to dispose of the emscripten module instance? (It's using Embind, so exit() 
>>> and friends don't seem to help.)
>>>
>>>
>>> Thanks,
>>> Maksim
>>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "emscripten-discuss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to emscripten-disc...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/emscripten-discuss/b93a52d7-a757-4b8d-87d6-a0ace8e3dcd4n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/emscripten-discuss/b93a52d7-a757-4b8d-87d6-a0ace8e3dcd4n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to emscripten-discuss+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/emscripten-discuss/f14a5a31-8f65-44b2-8b6e-b5d80fb7aeaan%40googlegroups.com.

Reply via email to