How is B4x for multi core processing on desktop? How would you move data (large text files, even larger result files, though both could be done as databases) passed back and forth?
The internal framework makes it very simple for libraries to implement tasks using background threads.
Features such as networking, database methods, hardware related methods and many others provide async methods that are executed with background threads.
This goes together with the resumable subs feature which allows the developer to treat async code in almost the same way as synchronous code.
For i = 1 To 1000 sql.AddNonQueryToBatch("INSERT INTO table1 VALUES (?)", Array(Rnd(0, 100000))) Next sql.ExecNonQueryBatch("SQL") Wait For SQL_NonQueryComplete (Success As Boolean) Log("NonQuery: " & Success)
Moving data with http or sockets or any other communication method is quite simple and always happens in the background.