XDebug outputs a computerized output in the following form:
5 33 0 0.003569 193040 function_exists 0 E:\Dropbox\Websites\flyingpiranhas\wireframework\vendor\swiftmailer\swiftmailer\lib\swift_required.php 24 1 '_swiftmailer_init'
5 33 1 0.003609 193040
5 34 0 0.003620 193008 Swift::registerAutoload 1 E:\Dropbox\Websites\flyingpiranhas\wireframework\vendor\swiftmailer\swiftmailer\lib\swift_required.php 32 1 $callable = '_swiftmailer_init'
6 35 0 0.003661 193472 spl_autoload_register 0 E:\Dropbox\Websites\flyingpiranhas\wireframework\vendor\swiftmailer\swiftmailer\lib\classes\Swift.php 79 1 array (0 => 'Swift', 1 => 'autoload')
6 35 1 0.003712 193560
5 34 1 0.003728 193240
As you can see, function with ID 33 entered the stack, exited, everything is normal. But look at 34. Function call 34 enters the stack, then 35 runs and executes, and only then is 34's exit printed.
What I'm wondering is, how do I interpret this? Does this mean function 34 lasted 108 miliseconds (until the last line) and that it waited for 35 to finish, or should I look at 41ms as its duration, that is, until function 35 started? Is this related to "level"? If so, how?
You're correct, 34 waited for 35 to finish lasting 108 milliseconds.