Product

Coexistence of thread-safe and non-thread-safe commands

Automatically translated from English

Have you ever needed to use methods with both thread-safe and not thread-safe calls, with conditions that skip over commands that are not thread-safe? Currently the compiler prevents doing this and an error is thrown, however there’s a flag that lets you disable this check and this blog post shows you how. 

Product

Concurrent merged clients from the same computer

Automatically translated from English

You asked for a way to run multiple clients on the same computer AND simultaneously connect them to the same 4D Server. We not only heard you, we’re giving you even more with 4D v17 R5! Each connection now includes a separated cache folder containing the connection’s IP address, port, and a hash code. Thanks to this, you can now also connect several clients from the same machine to multiple servers on different machines. There’s no configuration necessary, just launch and watch it work!

Product

Improved performance: up to 8xs faster (no, that’s not a typo)!

Automatically translated from English

Scalability is one of our primary concerns and 4D v17 R5 brings good news in this area, particularly for those with a heavy process load on their 4D Server. You’ll notice significant improved performance speeds when remote clients (one, two, or even hundreds) are connected to your server.

4D’s internal architecture has been enhanced and now processor usage is fully optimizedopens in a new tab) in preemptive mode and simultaneous read/write accesses on the same table. As a result, you could see performance 4 to 8xs faster!

Product

64-bit support brings new opportunities

Automatically translated from English

Without sugarcoating it, 4D v17 R5 is 64-bit only! It’s no secret that many features, such as preemptive processes, new cache manager, 4D View Pro, and more are already only available in 64-bit. The bright side is that focusing on 64-bit systems makes it possible for us to incorporate more modern technologies and feature sets, as well as update many libraries. This change also brings new opportunities and in this blog post we’ll focus on the updated libraries and the positive impact on your 4D applications.

Events

Make your solutions scalable with preemptive multi-threading – Add K. from 4D Summit 2018

Automatically translated from English

Preemptive processes are powerful since they allow your applications to take full advantage of multi-core computers; consequently, this results in faster global execution time and more connected users. With 4D v17, we went a step further by providing you 1,000+ thread-safe commands!

Watch the Preemptive multi-threading video from the 4D Summit 2018 Keynote. It features Add Komoncharoensiri, Director of Technical Services (4D USA), explaining how the preemptive support in 4D helps you take advantage of your multi-core machines, as well as the new concepts we shipped along the way to help you boost performance and efficiency.

Product Web Service in preemptive

Preemptive Web Services Server and Client

Automatically translated from English

Preemptive Web Services allow your applications to take full advantage of multi-core computers resulting in faster responses for simultaneous requests. It’s not only powerful, it’s also easy: from the Method Properties of any method, just select the “Can be run in preemptive processes” option and you’re off and running!

A 4D method can be preemptive or not according to compilation options and the use of the language, as explained in this post.

Product

More commands to run in preemptive processes

Automatically translated from English

A preemptive process is powerful as it allows your application to take full advantage of multi-core computers; consequently, its results in a faster global execution time and more connected users. A 4D process may be preemptive or not according to compilation options and the use of the language, as explained in this post.

In order to benefit from this mode as much as possible we are pleased to announce that more than twenty existing commands have been enhanced and can now be used inside preemptive processes.

Events

4D Summit 2016: Laurent Esnault presents workers and UI in preemptive mode

Automatically translated from English

Our own VP of Engineering, Laurent Esnault, explains exchanging information between multiple processes AND between processes and forms during his Break Out Session: Preemptive Multi-threading at 4D Summit 2016. Thanks to preemptive multi-threading, you can have more parallel processes, and thus add more and more users, for either desktop or web applications.

If you missed Laurent’s session at 4D Summit 2016, watch this 15-min video and enjoy some personal training by the master of preemptive multi-threading!

Events

Difference between cooperative and preemptive explained by Laurent Esnault at 4D Summit 2016

Automatically translated from English

Laurent Esnault, VP of Engineering, explains the difference between cooperative and preemptive processes during his Break Out Session about Preemptive Multi-threading at 4D Summit 2016. Thanks to Preemptive Multi-threading, you can have more parallel processes, and thus add more and more users, either for desktop or for web applications.

If you missed Laurent’s session at 4D Summit 2016, watch this video and enjoy some personal training by the master of preemptive multi-threading!