This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

索尼机芯本地校时问题



索尼机芯的球机,本地校时,调用以下的函数,cpu占有率突然100%,视频时不时会断掉。源代码如下:

int SetTime(char buf[])

{

struct tm *time_tt; time_t tt;

memcpy(time_tt,buf,sizeof(tt)); int year,month,day,hour,minutes,second;

 memcpy(&year,&time_tt->tm_year,sizeof(int));

memcpy(&month,&time_tt->tm_mon,sizeof(int));

memcpy(&day,&time_tt->tm_mday,sizeof(int));

memcpy(&hour,&time_tt->tm_hour,sizeof(int));

memcpy(&minutes,&time_tt->tm_min,sizeof(int));

memcpy(&second,&time_tt->tm_sec,sizeof(int));

printf("year=%d\n",year);

printf("month=%d\n",month);

printf("day=%d\n",day);

printf("hour=%d\n",hour);

printf("minutes=%d\n",minutes);

printf("second=%d\n",second);

printf("time_tt->tm_year=%d\n",time_tt->tm_year);

printf("time_tt->tm_mon=%d\n",time_tt->tm_mon);

printf("time_tt->tm_day=%d\n",time_tt->tm_mday);

printf("time_tt->tm_hour=%d\n",time_tt->tm_hour);

printf("time_tt->tm_min=%d\n",time_tt->tm_min);

printf("time_tt->tm_sec=%d\n",time_tt->tm_sec);

time(&tt);

time_tt = localtime(&tt);

year = (year>1900) ? year-1900 : 0;

time_tt->tm_year = year;

month = (month>0) ? month-1 : 0;

time_tt->tm_mon = month;

time_tt->tm_mday = day;

time_tt->tm_hour = hour;

time_tt->tm_min = minutes;

time_tt->tm_sec = second+3;

printf("time_tt->tm_year=%d\n",time_tt->tm_year);

printf("time_tt->tm_mon=%d\n",time_tt->tm_mon);

printf("time_tt->tm_day=%d\n",time_tt->tm_mday);

printf("time_tt->tm_hour=%d\n",time_tt->tm_hour);

printf("time_tt->tm_min=%d\n",time_tt->tm_min);

printf("time_tt->tm_sec=%d\n",time_tt->tm_sec);

printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n");

if ((tt = mktime(time_tt)) < 0) return -1;

printf("###########################################\n");

ScheduleStop();

stime(&tt);

system("hwclock -uw");

ResumeSchedule();

return 0;

}

******************************************************************************************************************************************************************

而抢机也是采用上面的代码,本地校时不会出现上面的问题。

请专家指点,问题出在哪里?非常感谢。