Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

for ( int i = 0 ; i < threadData - > numberOfStringsToGenerate; i + + , std::this _ thread::sleep _ for ( std::chrono::milliseconds (

for(int i =0; i < threadData->numberOfStringsToGenerate; i++, std::this_thread::sleep_for(std::chrono::milliseconds(10)))
{
if (threadData->runtype ==0|| threadData->runtype ==1)
{
threadData->mutualchecker->lock();
}
if (threadData->runtype ==2)
{
threadData->mutualchecker->lock();
threadData->sharedStringLength;
}
for(int j =0; j < threadData->sharedStringLength; j++)
{
std::this_thread::sleep_for(std::chrono::milliseconds(1));
threadData->sharedString[j]='A'+ threadData->id;
}
printf("Thread %d: %s
", threadData->id, threadData->sharedString);
if (threadData->runtype ==0|| threadData->runtype ==1)
{
threadData->mutualchecker->unlock();
}
if (threadData->runtype ==2)
{
threadData->mutualchecker->unlock();
}
}
///////////////////////////////////////////////////////////////////////////////////
}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions