Suggerimenti

Suggerimenti tecnici – Ecco i 4 suggerimenti di aprile!

Tradotto automaticamente da Deepl

di Add Komoncharoensiri, Direttore dei servizi tecnici di 4D Inc.

In qualità di sviluppatore 4D, è necessario tenersi al passo con i nuovi progressi che 4D sta continuamente fornendo. Oltre ai suggerimenti e ai trucchi forniti dal team del prodotto, i suggerimenti tecnici sono un altro riferimento per imparare alcuni concetti di 4D.

Questo articolo tratta 4 suggerimenti:

  • Come trattare i caratteri jolly SQL come una stringa letterale
  • Ottenere programmaticamente il nome del progetto
  • I metodi preemptive sotto la stessa catena di chiamate devono essere anch’essi preemptive
  • Creare un nuovo documento di View Pro basato su un foglio
Prodotto blank

ORDA – Condividere una selezione di entità tra i processi

Tradotto automaticamente da Deepl

4D v16 R6 ha introdotto un nuovo concetto di comunicazione tra processi: le variabili condivise di oggetti e collezioni! Grazie a questo concetto, è possibile condividere facilmente le informazioni tra i processi.

Finora le selezioni di entità non erano condivisibili tra i processi. Tuttavia, le cose sono cambiate… siamo lieti di annunciare che in 4D v18 R5 le selezioni di entità sono condivisibili!

Sono finiti i giorni in cui bisognava costruire un elenco di chiavi primarie per spostare una selezione di entità a un altro processo. Migliorate il vostro codice multiprocesso includendo le selezioni di entità ORDA come oggetti condivisi.

Continuate a leggere per saperne di più.

Prodotto blank

Angolo degli oggetti: condivisione facilitata e altre buone notizie

Tradotto automaticamente da Deepl

Quante volte avete ricevuto l’errore“Tipo di valore non supportato in un oggetto condiviso” quando avete cercato di inserire un oggetto in un oggetto condiviso?

Che cosa avete fatto? Avete scritto del codice più lungo per trasformare il vostro oggetto innocente in un oggetto condiviso, magari iterando su tutte le sue proprietà?

Che ne dite di trasferire un oggetto condiviso da un gruppo condiviso a un altro?

Una cosa interessante sugli oggetti: sapete già che possono essere usati come una mappa hash (un sistema chiave/valore), ma che ne dite di ottenere tutte le chiavi o tutti i valori con una sola riga di codice?

Continuate a leggere, perché 4D v18 R3 è uscito e porta con sé buone notizie!

Prodotto blank

Coesistenza di comandi thread-safe e non thread-safe

Tradotto automaticamente da Deepl

Avete mai avuto bisogno di usare metodi con chiamate sia thread-safe che non thread-safe, con condizioni che saltano i comandi che non sono thread-safe? Attualmente il compilatore impedisce di farlo e viene lanciato un errore, ma esiste un flag che consente di disabilitare questo controllo e questo post mostra come fare.

Prodotto blank

Sincronizzare facilmente i processi

Tradotto automaticamente da Deepl

I processi preemptive sono molto utili per eseguire calcoli estesi in parallelo, utilizzando tutti i core della CPU, ma a volte è necessario delegare i compiti a un processo cooperativo(ad esempio, utilizzando un comando non preemptive). Con il comando New signal è possibile mettere in pausa un processo e attendere la risposta di un altro processo!

Prodotto blank

Ulteriori comandi thread-safe a vostra disposizione

Tradotto automaticamente da Deepl

4D consente di sfruttare appieno i computer multi-core con processi preemptive. In un precedente post sul blog, vi abbiamo fornito un elenco di comandi avanzati che possono essere utilizzati nei processi preemptive, consentendo tempi di esecuzione globali più rapidi e un maggior numero di utenti connessi. In risposta ai vostri commenti, abbiamo ampliato l’elenco con un numero ancora maggiore di comandi.