Question: 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

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!