Commit Graph

35 Commits

Author SHA1 Message Date
Pedro J. Estébanez 21c03d1956 WorkerThreadPool: Fix thread message queue not restored after overridden in a task
Also, simplifies the thread override teardown in MessageQueue.
2024-06-13 10:31:08 +02:00
Rémi Verschelde bdefe53992 Merge pull request #91909 from KoBeWi/have_fun_reviewing_this
Use Core/Scene stringnames consistently
2024-05-14 12:07:03 +02:00
kobewi 413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
Rémi Verschelde 5cb9a748d6 Merge pull request #91630 from RandomShaper/enh_mat_sh_update
Let materials' shaders update happen on loader threads
2024-05-13 17:32:11 +02:00
kobewi a262d2d881 Add shorthand for using singleton string names 2024-05-11 18:53:08 +02:00
Pedro J. Estébanez 187e5ef258 Let materials' shaders update happen on loader threads 2024-05-06 19:40:00 +02:00
A Thousand Ships 14897f6dd7 [Core] Prevent further infinite recursion when printing errors 2024-03-14 22:44:22 +01:00
A Thousand Ships 15369fdb1d Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
A Thousand Ships d10617bb3b [Core] Prevent infinite recursion when printing errors 2023-11-26 18:53:28 +01:00
A Thousand Ships 034c0f1624 Replace sanity with safety for checks 2023-10-08 16:22:24 +02:00
clayjohn fcc6c6a697 Revert "Let user know about dead instances in deferred calls"
This reverts commit 3a6527d6d3.
2023-07-31 10:45:20 +02:00
Yuri Sizov 2c8cbcd1a0 Merge pull request #78987 from RandomShaper/err_bad_deferred_target
Let user know about dead instances in deferred calls
2023-07-26 18:39:38 +02:00
Pedro J. Estébanez 3a6527d6d3 Let user know about dead instances in deferred calls 2023-07-03 17:57:49 +02:00
Pedro J. Estébanez c85beb8106 Refactor CallQueue flushing for clarity 2023-06-23 13:27:34 +02:00
Pedro J. Estébanez c450260e3e Fix message queue issues
- Missing flush in resource loading.
- Wrong checks about message queue instance.
2023-05-19 13:11:34 +02:00
Pedro J. Estébanez 93de52942a Fix transfer of messages between queues 2023-05-15 11:51:58 +02:00
Pedro J. Estébanez 5a4613f551 Avoid sync issues in resources with deferred updates 2023-05-10 18:53:41 +02:00
Juan Linietsky 98c655ec8d Refactor Node Processing
* Node processing works on the concept of process groups.
* A node group can be inherited, run on main thread, or a sub-thread.
* Groups can be ordered.
* Process priority is now present for physics.

This is the first steps towards implementing https://github.com/godotengine/godot-proposals/issues/6424.
No threading or thread guards exist yet in most of the scene code other than Node. That will have to be added later.
2023-05-09 19:17:51 +02:00
Pedro J. Estébanez 8654e90759 Mend some checks in CallQueue 2023-05-05 17:37:44 +02:00
Pedro J. Estébanez 33f674d0f7 Complete support of callables of static methods 2023-04-12 18:12:19 +02:00
Juan Linietsky 6055e4424a Redo of Message Queue
* Functionality moved to a base class CallQueue, which will be used for inter-thread communication within the scene.
* MessageQueue now uses growing pages, starts from a single 4k page.
* Limit still exists, but because its not allocated by default, it can be much higher.
2023-04-12 16:31:23 +02:00
RedMser ed960453b7 Make solving project setting errors easier
Show full project setting path in error messages.
Force filtering for advanced settings if filter is not empty.
2023-03-27 08:10:35 +02:00
AndreaCatania 02f2107620 Improve error reporting when the Message Queue is out of Memory.
The function `statistics()`, called when the MessageQueue is out of memory,
will still use the MessageQueue so it crashes.
Moving the error above will improve the behavior since the developer will
find the crash reasons and the instruction on how to fix it.
2023-02-11 22:45:14 +01:00
Pedro J. Estébanez 6616b0619d Revert "Make MessageQueue::push_callable(p) work with bound arguments"
This reverts commit 81b1ebddef.
2023-01-18 19:20:40 +01:00
Pedro J. Estébanez 81b1ebddef Make MessageQueue::push_callable(p) work with bound arguments 2023-01-18 14:54:17 +01:00