マクロ定義 | |
#define | TNUM_HIST 10 |
関数 | |
void | init_hist (ID histid, uint_t maxval, uint_t *hist) |
void | begin_measure (ID histid) |
void | end_measure (ID histid) |
void | print_hist (ID histid) |
#define TNUM_HIST 10 |
histogram.h の 55 行で定義されています。
void begin_measure | ( | ID | histid | ) |
histogram.c の 101 行で定義されています。
参照先 assert, histogram_control_block::begin_time, get_utm(), TMAX_HISTID, と TMIN_HISTID.
00102 { 00103 HISTCB *p_histcb; 00104 00105 assert(TMIN_HISTID <= histid && histid <= TMAX_HISTID); 00106 p_histcb = &(histcb_table[histid - TMIN_HISTID]); 00107 00108 get_utm(&(p_histcb->begin_time)); 00109 }
void end_measure | ( | ID | histid | ) |
histogram.c の 115 行で定義されています。
参照先 assert, histogram_control_block::begin_time, get_utm(), histogram_control_block::histarea, histogram_control_block::over, TMAX_HISTID, と TMIN_HISTID.
00116 { 00117 HISTCB *p_histcb; 00118 SYSUTM end_time; 00119 uint_t val; 00120 00121 get_utm(&end_time); 00122 00123 assert(TMIN_HISTID <= histid && histid <= TMAX_HISTID); 00124 p_histcb = &(histcb_table[histid - TMIN_HISTID]); 00125 00126 val = (uint_t)(end_time - p_histcb->begin_time); 00127 if (val <= p_histcb->maxval) { 00128 p_histcb->histarea[val]++; 00129 } 00130 else { 00131 p_histcb->over++; 00132 } 00133 }
void print_hist | ( | ID | histid | ) |
histogram.c の 139 行で定義されています。
参照先 assert, histogram_control_block::histarea, LOG_NOTICE, logtask_flush(), histogram_control_block::maxval, histogram_control_block::over, syslog_2, TMAX_HISTID, と TMIN_HISTID.
00140 { 00141 HISTCB *p_histcb; 00142 uint_t i; 00143 00144 assert(TMIN_HISTID <= histid && histid <= TMAX_HISTID); 00145 p_histcb = &(histcb_table[histid - TMIN_HISTID]); 00146 00147 for (i = 0; i < p_histcb->maxval; i++) { 00148 if (p_histcb->histarea[i] > 0) { 00149 syslog_2(LOG_NOTICE, "%d : %d", i, p_histcb->histarea[i]); 00150 (void) logtask_flush(4U); 00151 } 00152 } 00153 if (p_histcb->over > 0) { 00154 syslog_2(LOG_NOTICE, "> %d : %d", p_histcb->maxval, p_histcb->over); 00155 } 00156 (void) logtask_flush(0U); 00157 }
Copyright © 2008 by Kijineko Inc.