comparison src/http/ngx_http_file_cache.c @ 3587:e1409e56ba7c stable-0.7

merge r3473, r3474, r3385, r3386, r3537: signal processing stability: *) use sys_errlist[] in signal handler instead of non Async-Signal-Safe strerror_r() *) do not update time in the timer signal handler, since localtime_r() is not Async-Signal-Safe function *) use previously cached GMT offset value to update time from a signal handler *) change ngx_time_update() interface since there are no notification methods those return time *) introduce ngx_time_sigsafe_update() to update the error log time only *) change ngx_time_update() interface
author Igor Sysoev <igor@sysoev.ru>
date Mon, 07 Jun 2010 10:35:08 +0000
parents 3354dfba9da4
children 0d8b8c84bab7
comparison
equal deleted inserted replaced
3586:2d21e02fc01d 3587:e1409e56ba7c
1126 { 1126 {
1127 ngx_msec_t elapsed; 1127 ngx_msec_t elapsed;
1128 1128
1129 if (cache->files++ > 100) { 1129 if (cache->files++ > 100) {
1130 1130
1131 ngx_time_update(0, 0); 1131 ngx_time_update();
1132 1132
1133 elapsed = ngx_abs((ngx_msec_int_t) (ngx_current_msec - cache->last)); 1133 elapsed = ngx_abs((ngx_msec_int_t) (ngx_current_msec - cache->last));
1134 1134
1135 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, ngx_cycle->log, 0, 1135 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, ngx_cycle->log, 0,
1136 "http file cache manager time: %M", elapsed); 1136 "http file cache manager time: %M", elapsed);
1143 * therefore sleep 200ms 1143 * therefore sleep 200ms
1144 */ 1144 */
1145 1145
1146 ngx_msleep(200); 1146 ngx_msleep(200);
1147 1147
1148 ngx_time_update(0, 0); 1148 ngx_time_update();
1149 } 1149 }
1150 1150
1151 cache->last = ngx_current_msec; 1151 cache->last = ngx_current_msec;
1152 cache->files = 0; 1152 cache->files = 0;
1153 } 1153 }