Repository: godot
Issue: Unused export plugins are polling in the background
Labels: bug,topic:editor,confirmed,topic:export,performance

### Godot version

3.4.4.stable.arch_linux

### System information

Linux 5.16.16-arch1-1

### Issue description

While looking into https://github.com/godotengine/godot/issues/35868, I noticed that the Javascript, IOS, and Android exporters are in a constant poll loop as soon as I start the editor. They're not consuming an excessive amount of CPU, so it isn't a huge deal, but would it be worth starting the threads only if you have an export target for that platform?

https://github.com/godotengine/godot/blob/242c05d12f134d8f079debaf50161ef83d1a3b8c/platform/iphone/export/export.cpp#L144-L178

```
Thread 9 (Thread 0x7fffb77fe640 (LWP 83945) "godot.x11.opt.t"):
#0  0x00007ffff7b64a55 in clock_nanosleep@GLIBC_2.2.5 () from /usr/lib/libc.so.6
#1  0x00007ffff7b69717 in nanosleep () from /usr/lib/libc.so.6
#2  0x00000000013f7270 in OS_Unix::delay_usec (this=<optimized out>, p_usec=<optimized out>) at drivers/unix/os_unix.cpp:243
#3  0x0000000001d5f9ed in EditorExportPlatformJavaScript::_server_thread_poll (data=0x9a1a430) at platform/javascript/export/export.cpp:966
#4  0x0000000003179a05 in Thread::callback (p_self=<optimized out>, p_settings=..., p_callback=0x1d5f9c0 <EditorExportPlatformJavaScript::_server_thread_poll(void*)>, p_userdata=0x9a1a430) at core/os/thread.cpp:77
#5  0x00000000034d3ed4 in execute_native_thread_routine ()
#6  0x00007ffff7b195c2 in start_thread () from /usr/lib/libc.so.6
#7  0x00007ffff7b9e584 in clone () from /usr/lib/libc.so.6

Thread 8 (Thread 0x7fffb7fff640 (LWP 83944) "godot.x11.opt.t"):
#0  0x00007ffff7b64a55 in clock_nanosleep@GLIBC_2.2.5 () from /usr/lib/libc.so.6
#1  0x00007ffff7b69717 in nanosleep () from /usr/lib/libc.so.6
#2  0x00000000013f7270 in OS_Unix::delay_usec (this=<optimized out>, p_usec=<optimized out>) at drivers/unix/os_unix.cpp:243
#3  0x0000000001d58c86 in EditorExportPlatformIOS::_check_for_changes_poll_thread (ud=0xa427e00) at platform/iphone/export/export.cpp:171
#4  0x0000000003179a05 in Thread::callback (p_self=<optimized out>, p_settings=..., p_callback=0x1d58b70 <EditorExportPlatformIOS::_check_for_changes_poll_thread(void*)>, p_userdata=0xa427e00) at core/os/thread.cpp:77
#5  0x00000000034d3ed4 in execute_native_thread_routine ()
#6  0x00007ffff7b195c2 in start_thread () from /usr/lib/libc.so.6
#7  0x00007ffff7b9e584 in clone () from /usr/lib/libc.so.6

Thread 7 (Thread 0x7fffbcb38640 (LWP 83943) "godot.x11.opt.t"):
#0  0x00007ffff7b64a55 in clock_nanosleep@GLIBC_2.2.5 () from /usr/lib/libc.so.6
#1  0x00007ffff7b69717 in nanosleep () from /usr/lib/libc.so.6
#2  0x00000000013f7270 in OS_Unix::delay_usec (this=<optimized out>, p_usec=<optimized out>) at drivers/unix/os_unix.cpp:243
#3  0x0000000001d0af43 in EditorExportPlatformAndroid::_check_for_changes_poll_thread (ud=0x9f59d30) at platform/android/export/export_plugin.cpp:380
#4  0x0000000003179a05 in Thread::callback (p_self=<optimized out>, p_settings=..., p_callback=0x1d0adc0 <EditorExportPlatformAndroid::_check_for_changes_poll_thread(void*)>, p_userdata=0x9f59d30) at core/os/thread.cpp:77
#5  0x00000000034d3ed4 in execute_native_thread_routine ()
#6  0x00007ffff7b195c2 in start_thread () from /usr/lib/libc.so.6
#7  0x00007ffff7b9e584 in clone () from /usr/lib/libc.so.6
```

Moved from https://github.com/godotengine/godot-proposals/discussions/4241.

### Steps to reproduce

1. Build godot with debug symbols
2. Start a new project
3. Pause with the debugger
4. List threads

### Minimal reproduction project

_No response_