Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 12.0   12.1   12.2   12.3   12.4   12.5   13.0   13.1   13.2   13.3    Statistic    FMM    Blog  


Perform a file transfer in background.

Component Version macOS Windows Linux Server iOS SDK
CURL 2.5 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
MBS( "CURL.PerformInBackground"; curl )   More


Parameter Description Example
curl The CURL session handle. $curl


Error code. 0 means everything was ok, non-zero means an error occurred.


Perform a file transfer in background.
This function is called after the init and all the options are set, and will perform the transfer as described in the options. It must be called with the same handle as input as the CURL.New call returned.

You can do any amount of calls to PerformInBackground while using the same handle. If you intend to transfer more than one file, you are even encouraged to do so. CURL will then attempt to re-use the same connection for the following transfers, thus making the operations faster, less CPU intense and using less network resources. Just note that you will have to use the option functions between the invokes to set options for the following CURL.Perform.

You must never call this function simultaneously from two places using the same handle. Let the transfer finish first before invoking it another time. If you want parallel transfers, you must use several curl handles.

Internal buffer for output, debug and header data is cleared before the perform.

While transfer is running, your FileMaker application is not blocked. Be aware that transfer runs in background and you should query status with functions like CURL.IsRunning, CURL.GetProgressTotalDownload, CURL.GetProgressTotalUpload, CURL.GetProgressCurrentDownload and CURL.GetProgressCurrentUpload.

See also

Release notes

Example Databases

Blog Entries

This function checks for a paid license.

Created 18th August 2014, last changed 18th August 2014

CURL.PerformAsync - CURL.Protocols

💬 Ask a question or report a problem

Start Chat