If calling different modules and methods inside benchmarking functions also measures their execution also? if sending a message to a process for processing other things , does it include that processing of that process.
No, it only measures the time required to execute the function. If the function is not awaiting on the processing of another process, then neither will your benchmark.
Yes. receive do blocks until it receives a message, which means it’ll block the return of the function, which means it’ll take more time in the benchmark.