Tech-Tipps – Die 4 Tipps vom April sind da!
von Add Komoncharoensiri, Leiter der technischen Dienste bei 4D Inc.
Als 4D Entwickler müssen Sie mit den neuen Entwicklungen Schritt halten, die 4D kontinuierlich herausbringt. Neben den Tipps und Tricks, die das Produktteam zur Verfügung stellt, sind die Tech Tips eine weitere Referenz, um einige der 4D Konzepte zu lernen.
Dieser Artikel behandelt 4 Tipps:
- Behandlung von SQL-Platzhaltern als literale Zeichenfolge
- Programmatische Ermittlung des Projektnamens
- Präemptive Methoden in derselben Aufrufkette sollten ebenfalls präemptiv sein
- Erstellen eines neuen View Pro-Dokuments basierend auf einem Sheet
Skalierbare Sitzungen für fortgeschrittene Webanwendungen
Heutzutage sind Webanwendungen unverzichtbare moderne Werkzeuge. Da die Rechner und Prozessoren immer leistungsfähiger werden, müssen Ihre Webanwendungen ständig den Leistungsanforderungen entsprechen. Aus diesem Grund bietet der 4D Web Server mit 4D v18 R6 eine neue Art von Websession: die skalierbare Websession.
Lassen Sie uns mehr darüber erfahren!
Teilen führt zu Leistung
Nach diesem Blogbeitrag über das neue Konzept der gemeinsam nutzbaren Entitätsauswahlen und den anschließenden Diskussionen im Forum nehmen wir uns nun die Zeit, um zu erklären, wie ORDA in die Zukunft passt.
ORDA – Gemeinsame Nutzung einer Entitätsauswahl durch Prozesse
4D v16 R6 hat ein neues Konzept für die Kommunikation zwischen Prozessen eingeführt: Shared Object und Shared Collection Variablen! Damit können Sie auf einfache Weise Informationen zwischen Prozessen austauschen.
Bis jetzt war es nicht möglich, Objektauswahlen zwischen Prozessen zu teilen. Das hat sich jedoch geändert … wir freuen uns, Ihnen mitteilen zu können, dass in 4D v18 R5 die Auswahl von Objekten gemeinsam genutzt werden kann!
Vorbei sind die Zeiten, in denen Sie eine Liste von Primärschlüsseln erstellen mussten, um eine Auswahl von Entitäten in einen anderen Prozess zu verschieben. Verbessern Sie Ihren Multiprozess-Code , indem Sie ORDA-Entity-Selektionen als gemeinsam genutzte Objekte einbinden.
Lesen Sie weiter, um mehr zu erfahren.
Objects Corner: Einfaches Teilen und andere gute Nachrichten
Wie oft haben Sie die Fehlermeldung„Not supported value type in a shared object“ erhalten, wenn Sie versucht haben, ein Objekt in ein gemeinsames Objekt zu setzen?
Was haben Sie dann getan? Haben Sie einen längeren Code geschrieben, um Ihr unschuldiges Objekt in ein gemeinsam genutztes Objekt zu verwandeln, vielleicht durch Iteration über alle Eigenschaften des Objekts?
Wie wäre es, ein gemeinsames Objekt von einer gemeinsamen Gruppe in eine andere zu übertragen?
Eine interessante Sache über Objekte: Sie wissen bereits, dass sie als Hash-Map (ein Schlüssel/Wert-System) verwendet werden können, aber wie wäre es, alle Schlüssel oder alle Werte mit einer einzigen Codezeile zu erhalten?
Lesen Sie weiter, denn 4D v18 R3 ist da und bringt gute Nachrichten!
Koexistenz von thread-sicheren und nicht-thread-sicheren Befehlen
Haben Sie schon einmal Methoden verwendet, die sowohl thread-sichere als auch nicht thread-sichere Aufrufe haben, mit Bedingungen, die Befehle überspringen, die nicht thread-sicher sind? Derzeit verhindert der Compiler dies und es wird ein Fehler ausgegeben. Es gibt jedoch eine Option, mit der Sie diese Prüfung deaktivieren können, und dieser Blogbeitrag zeigt Ihnen, wie das geht.
Einfaches Synchronisieren Ihrer Prozesse
Präemptive Prozesse sind sehr nützlich für die parallele Durchführung umfangreicher Berechnungen, bei denen alle Kerne Ihrer CPU genutzt werden, aber manchmal müssen Sie Aufgaben an einen kooperativen Prozess delegieren(z. B. mit einem nicht präemptiven Befehl). Mit dem New signal Befehl können Sie einen Prozess anhalten und auf die Antwort eines anderen Prozesses warten!
SQL im präemptiven Modus beginnen/beenden
Mit präemptiven Prozessen können Ihre Anwendungen die Vorteile von Multi-Core-Computern voll ausschöpfen, was zu schnelleren Antworten auf gleichzeitige Anfragen führt. Beginnend mit 4D v17 R4, Begin SQL, End SQLund die zugehörigen SQL-Anweisungen, die mit einer internen Datenbank verwendet werden, sind nun präemptiv.
Präemptive Prozesse auf 4D Remote
Müssen Sie komplexe Berechnungen oder Exporte auf der Client-Seite durchführen? Nutzen Sie präemptive Prozesse und starten Sie diese Aktionen, ohne die Benutzer und ihre tägliche Arbeit zu verlangsamen!
Mehr Thread-sichere Befehle zu Ihrer Verfügung
Mit 4D können Sie die Vorteile von Multicore-Computern mit präemptiven Prozessen voll ausschöpfen. In einem früheren Blog-Beitrag haben wir Ihnen eine Liste erweiterter Befehle zur Verfügung gestellt, die in präemptiven Prozessen verwendet werden können, was eine schnellere globale Ausführungszeit und mehr verbundene Benutzer ermöglicht. Und als Reaktion auf Ihr Feedback haben wir die Liste um weitere Befehle erweitert.
Kontakt
Sie haben eine Frage, eine Anregung oder möchten einfach nur mit den 4D Bloggern in Kontakt treten? Schreiben Sie uns eine Nachricht!
* Ihre Privatsphäre ist uns sehr wichtig. Bitte klicken Sie hier, um unsere Politik