Downloads

← Back Multithreaded access to readonly database
Version:
1.2
Format:
Unity package
Dependencies:
BGDatabase >= 1.7.12

Description

Support for multithreaded access to the database in readonly mode. No database data should be changed in runtime.

Setup guide

  1. Import this plugin
  2. Enable CodeGen addon and generate classes in readonly mode
  3. Disable LazyLoad addon if it's enabled
  4. Add Assets\BansheeGz\BGDatabaseReadonlyMT\Scripts\BGDatabaseMTManager.cs script to your startup scene (make sure it's executed before accessing database from multiple threads)
  5. If you use Addressables and asynchronous assets loading, unpack Assets/BansheeGz/BGDatabaseReadonlyMT/Scripts/AddressablesSupport.unitypackage package

Features

  1. Initialize data structures, which otherwise are initialized on demand
  2. Enables L2 memory cache for Unity assets and loads all of them to this cache (make sure that all your assets does not take too much memory)
  3. Notify code generation utils to use multithreaded approach

Limitations

unityObjectList field is not currently supported

Settings

This component uses 'safety first, optimization second' approach, meaning it's meant to be safe without any additional settings. However, some settings are available to reduce memory usage. Use these settings with big care, cause if the setting rule is broken - it can result in errors.

Parameter Description
List with all the tables, which 'name' index is used add all the tables, which can be used for getting an entity by name, otherwise the 'name' index will be initialized for all metas. If you use this setting - make sure to include all the tables, which can be used for getting an entity by name.
List with all partial keys add all the keys, which can be used for searching entities by partial key value, for example the key has 2 fields, but entity is searched by 1 single field. If you leave this list empty - all the keys with more than 1 field will be initialized for partial access. If you use this setting - make sure to include all the keys, which can be used for getting an entity by partial key value.

Releases

Click to see all releases
Version Release date Log Download
1.2 Feb 09, 2024 ADDED support for asynchronous assets loading
1.1 Jan 10, 2023 Programmable fields support added
1.0 Apr 24, 2022 Calculated fields support added
0.9 Apr 01, 2022 Initial beta release
← Back to Downloads