행렬의 곱셈을 쓰레드로 구하는 프로그램 작성중인데 

main 인자가 없을경우에는 


이런식으로 행열 입력받아서 랜덤으로 행렬을 만들고


인자를 두개이상 입력받앗을 경우 행렬을 곱하는걸 쓰레드로 작성하는 프로그램인데 이런 과제특성상 쓰레드의 작동을 확인하기 위해 계산식에 Sleep함수를 넣으라했거든


근데 좀 적은 수의 행렬이면 문제가 없는데 대략 80행 80열이 넘는시점부터 작동이 중지되버리는데

문제는 Sleep 함수가 없거나 Sleep(10)정도면 100행 100열도 문제없이 작동하는데 sleep(1000)이 되기만 하면 저렇게 사진처럼 작동을 멈춰 ㅠ

심지어 계산식이 문제일까 싶어서

void Calculate(Matrix m1, Matrix m2,int _Row,int _Col, int result[100][100])

{

//cout << _Row*m2.Column + _Col << "번쓰레드 작동" << endl;

Sleep(1000);

for (int i = 0; i < m1.Column; i++)

{

result[_Row][_Col] += (m1.mm[_Row][i] * m2.mm[i][_Col]);

}

//cout << _Row*m2.Column + _Col << "번 쓰레드 종료" << endl;

}

여기서 계산식 다 주석처리하고 Sleep만 남겨봤거든?

그래도 에러나버리더라 컴린이가 뭐가 문제인지조차 모르겟다 ㅠ  소스코드는 이미지파일 마지막으로 확장자명 바꿔서 올려둘게ㅠ 컴고수님들아 도움