Question: The following code has critical section problems. Fix the critical section problems. void *purchase_stock() { if ( share_value < purchase_value ) { //buy stocks float
The following code has critical section problems. Fix the critical section problems.
void *purchase_stock() { if (share_value < purchase_value) { //buy stocks float temp = floor(cash_in_hand / share_value); cash_in_hand -= temp*share_value; num_stocks_owned += temp; } } void *share_market_update() { share_value *= rand(-1,1); } void *sell_stocks() { if (share_value > sell_value) { //sell all stocks profit = num_stocks_owned * share_value - original_investment; cash_in_hand += num_stocks_owned*share_value; num_stocks_owned = 0; } } Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
