Changeset 6383 for vtkvis/trunk
- Timestamp:
- Jun 16, 2016 3:46:17 PM (8 years ago)
- Location:
- vtkvis/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
vtkvis/trunk/RenderServer.cpp
r4806 r6383 250 250 g_statsFile = open(pathStr.c_str(), O_EXCL | O_CREAT | O_WRONLY, 0600); 251 251 if (g_statsFile < 0) { 252 253 252 ERROR("can't open \"%s\": %s", pathStr.c_str(), strerror(errno)); 253 return -1; 254 254 } 255 255 return g_statsFile; … … 273 273 serverStats(int code) 274 274 { 275 double start, finish;276 275 char buf[BUFSIZ]; 277 276 Tcl_DString ds; 278 277 int result; 279 int f; 280 281 { 282 struct timeval tv; 283 284 /* Get ending time. */ 285 gettimeofday(&tv, NULL); 286 finish = CVT2SECS(tv); 287 tv = g_stats.start; 288 start = CVT2SECS(tv); 289 } 278 279 /* Get ending time. */ 280 struct timeval now; 281 gettimeofday(&now, NULL); 282 double session_time = CVT2SECS(now) - CVT2SECS(g_stats.start); 283 290 284 /* 291 285 * Session information: … … 326 320 /* date */ 327 321 Tcl_DStringAppendElement(&ds, "date"); 328 strcpy(buf, ctime(& g_stats.start.tv_sec));322 strcpy(buf, ctime(&now.tv_sec)); 329 323 buf[strlen(buf) - 1] = '\0'; 330 324 Tcl_DStringAppendElement(&ds, buf); 331 325 /* date_secs */ 332 326 Tcl_DStringAppendElement(&ds, "date_secs"); 333 sprintf(buf, "%ld", g_stats.start.tv_sec);327 sprintf(buf, "%ld", now.tv_sec); 334 328 Tcl_DStringAppendElement(&ds, buf); 335 329 /* num_data_sets */ … … 359 353 /* session_time */ 360 354 Tcl_DStringAppendElement(&ds, "session_time"); 361 sprintf(buf, "%g", finish - start);355 sprintf(buf, "%g", session_time); 362 356 Tcl_DStringAppendElement(&ds, buf); 363 357 /* status */ … … 366 360 Tcl_DStringAppendElement(&ds, buf); 367 361 { 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 362 long clocksPerSec = sysconf(_SC_CLK_TCK); 363 double clockRes = 1.0 / clocksPerSec; 364 struct tms tms; 365 366 memset(&tms, 0, sizeof(tms)); 367 times(&tms); 368 /* utime */ 369 Tcl_DStringAppendElement(&ds, "utime"); 370 sprintf(buf, "%g", tms.tms_utime * clockRes); 371 Tcl_DStringAppendElement(&ds, buf); 372 /* stime */ 373 Tcl_DStringAppendElement(&ds, "stime"); 374 sprintf(buf, "%g", tms.tms_stime * clockRes); 375 Tcl_DStringAppendElement(&ds, buf); 376 /* cutime */ 377 Tcl_DStringAppendElement(&ds, "cutime"); 378 sprintf(buf, "%g", tms.tms_cutime * clockRes); 379 Tcl_DStringAppendElement(&ds, buf); 380 /* cstime */ 381 Tcl_DStringAppendElement(&ds, "cstime"); 382 sprintf(buf, "%g", tms.tms_cstime * clockRes); 383 Tcl_DStringAppendElement(&ds, buf); 390 384 } 391 385 Tcl_DStringAppend(&ds, "\n", -1); 392 f= getStatsFile(NULL);393 result = writeToStatsFile(f , Tcl_DStringValue(&ds),386 int fd = getStatsFile(NULL); 387 result = writeToStatsFile(fd, Tcl_DStringValue(&ds), 394 388 Tcl_DStringLength(&ds)); 395 close(f );389 close(fd); 396 390 Tcl_DStringFree(&ds); 397 391 return result; … … 450 444 if (g_fLog != NULL) { 451 445 fclose(g_fLog); 452 446 g_fLog = NULL; 453 447 } 454 448 } -
vtkvis/trunk/RendererCmd.cpp
r4814 r6383 2353 2353 objPtr = Tcl_NewStringObj(buf, -1); 2354 2354 Tcl_ListObjAppendElement(interp, listObjPtr, objPtr); 2355 /* date */ 2356 Tcl_ListObjAppendElement(interp, listObjPtr, Tcl_NewStringObj("date", 4)); 2357 strcpy(buf, ctime(&VtkVis::g_stats.start.tv_sec)); 2358 buf[strlen(buf) - 1] = '\0'; 2359 Tcl_ListObjAppendElement(interp, listObjPtr, Tcl_NewStringObj(buf, -1)); 2360 /* date_secs */ 2361 Tcl_ListObjAppendElement(interp, listObjPtr, 2362 Tcl_NewStringObj("date_secs", 9)); 2363 Tcl_ListObjAppendElement(interp, listObjPtr, 2364 Tcl_NewLongObj(VtkVis::g_stats.start.tv_sec)); 2355 2365 } else { 2356 2366 objPtr = Tcl_NewStringObj("render_info", 11); 2357 2367 Tcl_ListObjAppendElement(interp, listObjPtr, objPtr); 2358 } 2359 /* date */ 2360 Tcl_ListObjAppendElement(interp, listObjPtr, Tcl_NewStringObj("date", 4)); 2361 strcpy(buf, ctime(&VtkVis::g_stats.start.tv_sec)); 2362 buf[strlen(buf) - 1] = '\0'; 2363 Tcl_ListObjAppendElement(interp, listObjPtr, Tcl_NewStringObj(buf, -1)); 2364 /* date_secs */ 2365 Tcl_ListObjAppendElement(interp, listObjPtr, 2366 Tcl_NewStringObj("date_secs", 9)); 2367 Tcl_ListObjAppendElement(interp, listObjPtr, 2368 Tcl_NewLongObj(VtkVis::g_stats.start.tv_sec)); 2368 struct timeval now; 2369 gettimeofday(&now, NULL); 2370 /* date */ 2371 Tcl_ListObjAppendElement(interp, listObjPtr, Tcl_NewStringObj("date", 4)); 2372 strcpy(buf, ctime(&now.tv_sec)); 2373 buf[strlen(buf) - 1] = '\0'; 2374 Tcl_ListObjAppendElement(interp, listObjPtr, Tcl_NewStringObj(buf, -1)); 2375 /* date_secs */ 2376 Tcl_ListObjAppendElement(interp, listObjPtr, 2377 Tcl_NewStringObj("date_secs", 9)); 2378 Tcl_ListObjAppendElement(interp, listObjPtr, 2379 Tcl_NewLongObj(now.tv_sec)); 2380 } 2369 2381 /* Client arguments. */ 2370 2382 if (Tcl_ListObjGetElements(interp, objv[1], &numItems, &items) != TCL_OK) {
Note: See TracChangeset
for help on using the changeset viewer.