Performance issues with concurrency

PART I:
You will create a C++ application that will exhibit concurrency concepts. Your application should create two threads that will act as counters. One thread should count up to 20. Once thread one reaches 20, then a second thread should be used to count down to 0. For your created code, provide a detailed analysis of appropriate concepts that could impact your application. Specifically, address:

Performance issues with concurrency
Vulnerabilities exhibited with use of strings
Security of the data types exhibited.

Submit the following for Part I:
Word document with appropriate screenshots of your program executing, program analysis responses, and source code in the Word file.
Submit your .cpp source code file(s). If more than 1 file, submit a zip file.

PART II:
you will create a Java application that will exhibit concurrency concepts. Your application should create two threads that will act as counters. One thread should count up to 20. Once thread one reaches 20, then a second thread should be used to count down to 0. For your created code, please be provide a detailed analysis of appropriate concepts that could impact your application. Specifically, please address:

Performance issues with concurrency
Vulnerabilities exhibited with use of strings
Security of the data types exhibited.

Sample Solution

ACED ESSAYS