what happens if I start several content deployment jobs synchronously in different site collections by ContentDeploymentJob.Run()? Are the jobs definitely executed one after another?
Yes, all the Content Deployment jobs can be run at same time (in parallel), but you need to make sure that you don't start another Content Deployment job if previous one is already in "Preparing" mode. I had faced some problems in the past while running different Content Deployment Jobs in parallel especially when Content Deployment jobs are configured with SQL Snapshots from the same Content Database.
Here are different statuses of Content Deployment that you might look into: