concurrency pros and cons