cocos-engine
cocos-engine copied to clipboard
Cache temporary se::Objects generated by JSB object properties accessing
Re: #
Changelog
- Enable
SE_HOLD_RETURN_VALUE
Need a smarter way to cache temporary JS object
Continuous Integration
This pull request:
- [ ] needs automatic test cases check.
Manual trigger with
@cocos-robot run test casesafterward. - [ ] does not change any runtime related code or build configuration
If any reviewer thinks the CI checks are needed, please uncheck this option, then close and reopen the issue.
Compatibility Check
This pull request:
- [ ] changes public API, and have ensured backward compatibility with deprecated features.
- [ ] affects platform compatibility, e.g. system version, browser version, platform sdk version, platform toolchain, language version, hardware compatibility etc.
- [ ] affects file structure of the build package or build configuration which requires user project upgrade.
- [ ] introduces breaking changes, please list all changes, affected features and the scope of violation.
(this._stats.bufferMemory.counter as PerfCounter).value = device.memoryStatus.bufferSize / (1024 * 1024);
(this._stats.textureMemory.counter as PerfCounter).value = device.memoryStatus.textureSize / (1024 * 1024);
When accessing device.memoryStatus.bufferSize in JS, a se::Object will be created and drop immeditely. Bound attributes like memoryStatus need to be cache.
Interface Check Report
This pull request does not change any public interfaces !