If your users are running your application as a virtualized application, chances are high they use VMWare vSphere (Hypervisor ESXi) and are using snapshots.
4D v16 R2 will automatically install a VSS writer service. VSS stands here for Volume Shadow Copy Service. When the VMWare administrator starts a snapshot, VMWare informs the guest, which informs the VSS writer, which will inform 4D Server to flush the cache and wait for one second. Then it will inform the OS that the .4DD, .4DIndx and .Journal files belong together and must be snapshot at the same time. The OS will handle this and 4D Server can continue to handle client requests. The “freeze” lasts around a second, usually not even noticed by connected users.
With 4D v16 R2 you can display a graphical horizontal ruler at the top of the 4D Write Pro area ! Thanks to this horizontal ruler, the text can be easily formatted.
Prior to the existence of this graphic ruler, tabulations could only be managed by programming or using the 4D Write Pro interface widget. From now (4D v16 R2 and above), when the ruler is displayed (this is optional) the final user will have the opportunity to manage margins and tabulations easily and graphically.
4D v16 introduced a new fully optimized cache manager for the 64-bit product line. 4D v16 R2 is giving power to our advanced 4D developers to take control by themselves!
The cache manager internal algorithm is based on a priority concept associated to each object type to store in the cache memory. By default, the cache manager algorithm assigns a higher priority value for an index than for records. And recently used objects (records or indexes) have a higher priority to remain in the cache than objects that have not been used in the last two days, etc…
We are moving forward with 4D v16 on preemptive multi-threading as the 4D Web Server is also becoming preemptive. Just click one checkbox and your application will support more simultaneously connected users, and process more requests in parallel. For requests using a lot of CPU time, execution can be up to 2 times faster!
The 4D v16 version has definitely been designed for better performance and scalability. In addition to major features like preemptive multi-threading, 4D v16 64-bit is embedding a brand new cache manager for a optimized handling of objects in cache memory avoiding any fragmentation issues.
The new cache manager improves the usage of very large cache for modern computers (with 64 or even 128 GB of Cache) allowing to take advantage of low RAM prices to have even large databases fully in memory. It also improves the situation of small cache size with very large data files, by decreasing the amount of unloading memory with increased support of priorities for data objects to be hold or released from cache.
QuickDraw/QuickTime pictures (PICT format) are deprecated since 4D v11 and must be replaced by modern picture formats (such as PNG or JPEG). New 64-bit versions of 4D no longer support PICT images. So the challenge is to find them in your old applications.
You want to visualize occurrences of a given variable in the 4D method editor? Or you find your method code too heavy with all those block icon and lines everywhere that it’s becoming hard to read?
With 4D v16 new preference options are available in the code editor to make the 4D developers’ life easier!!
If you’re used to run multiple 4D instances of an application on the same system, we are introducing with 4D v16 a feature that will simplify your life.
You now have the possibility to associate a set of different user settings with each data file.
Since 4D v11, the database server and SQL server both use preemptive multi-threading. Starting with 4D v13, the Web Server in Static mode also uses preemptive. Now with v15 R5, the 4D language can also be run in preemptive processes.
One common usage of 4D Write was to create documents automatically, such as invoices, reports, orders, based on templates created or designed by the end user.
4D Write Pro v16 will support this usage with the new concept of bookmarks, that can be used to easily build new documents section by section.