Skip to content

Conversation

@kwvanderlinde
Copy link
Collaborator

@kwvanderlinde kwvanderlinde commented Feb 5, 2025

This includes fixes for the merge conflicts present in #5172 caused by fixes for walls.


This change is Reviewable

kwvanderlinde and others added 7 commits January 24, 2025 15:24
The cache is moved to `ZoneView` to better match the 1.15 and earlier cache. The cache is now cleared on `TokensChanged`
events as well as `TopologyChanged`, as it was before.
The getAssetAsynchronous method uses a thread pool so that requests to
load assets don't block networking threads etc.

It has been a single thread pool through the existing git history
but it is assumed that it is like this because it used to have a thread
and then was converted to use a single thread fixed thread pool.

Unfortunately having a single thread only means that if an asset load
callback indirectly loads another asset then this can deadlock
since the asset loader thread needs to be released before the load
request can start, which it can't because that thread is waiting for the
result of loading the new asset, thus it deadlocks if an AddOn includes
a JavaScript onInit script since it deadlocks waiting to load that
script.

Changing the thread pool so that the threads load in parallel is an
observable change that could cause problems,
but if the AddOn isn't already loaded the addonLoader's thread pool
loads it instead and that works fine,
so MapTool should be alright with addons and other assets loading in
parallel.
…-token-mask-cache-not-invalidated

Fix noded topology cache invalidation
…ad-hang

Use a variable sized thread pool in AssetManager
…s-unable-to-draw

Drawing tools should always be available, even for players
@kwvanderlinde kwvanderlinde added the ignore-for-release-note Wont be auto added to the release note label Feb 5, 2025
@kwvanderlinde kwvanderlinde self-assigned this Feb 5, 2025
@cwisniew cwisniew added this pull request to the merge queue Feb 6, 2025
Merged via the queue into RPTools:develop with commit 6280162 Feb 6, 2025
5 checks passed
@kwvanderlinde kwvanderlinde deleted the develop-merge-release-1.16 branch February 6, 2025 01:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ignore-for-release-note Wont be auto added to the release note

Projects

Status: Merged

Development

Successfully merging this pull request may close these issues.

4 participants