I'm happy to release B4i v5.00 BETA. This update includes significant performance improvements, in both debug mode and release mode, as well as other improvements.
Users who are eligible for free upgrade will soon receive an email with link to the beta version. Please give it a try, many parts of the compiler were rewritten and it is better to catch errors during the beta stage...
- Resumable subs in debug mode are optimized in the same way other subs are optimized. You can see the difference in this video (the video was taken with a B4A app, the improvement is the same in B4i):
- Runtime performance improvements including: for loop optimizations, inlined methods, direct field access for properties and others.
These improvements can make a huge difference in processor intensive tasks.
As an example, the number of drawings per second with BitmapCreator:
V4.8:
Draw smilies from BitmapCreator (skip blending): 81,000 per second
Draw smilies from BitmapCreator (with blending): 700 per second
V5.0:
Draw smilies from BitmapCreator (skip blending): 620,000 per second (7.5x)
Draw smilies from BitmapCreator (with blending): 20,700 per second (30x)
In most cases the difference will not be so large but it will still help your programs run faster.
- Bit.ArrayCopy and FastArrayGet and Set methods that are useful when very fast access is required: https://www.b4x.com/android/forum/threads/fast-arrays-access.92951/
- iXUI library v1.60 with B4XCanvas.MeasureText, DrawPath and DrawPathRotated.
- xCustomListView and iBitmapCreator are included as internal libraries.
- New File methods: CopyAsync, Copy2Async, ReadBytes, WriteBytes and ListFilesAsync.
- Support for Xcode 9.3.
- Libraries deprecation messages.
- Other minor improvements including fixes for several debugger issues.
Users who are eligible for free upgrade will soon receive an email with link to the beta version. Please give it a try, many parts of the compiler were rewritten and it is better to catch errors during the beta stage...
Last edited: