Calculate thread busyness as the current concurrent running threads vs. the max number of threads ever seen running concurrently.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4404 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
2023-08-17 00:01:59 +00:00
parent 358d02d97f
commit faca2d387b
6 changed files with 23 additions and 61 deletions

View File

@ -382,9 +382,6 @@ typedef struct _sql_work_t
{
uv_work_t request;
tf_ssb_t* ssb;
uv_thread_t thread_id;
uint64_t start_time;
uint64_t end_time;
const char* query;
uint8_t* binds;
size_t binds_count;
@ -406,10 +403,9 @@ static void _tf_ssb_sql_append(uint8_t** rows, size_t* rows_count, const void* d
static void _tf_ssb_sqlAsync_work(uv_work_t* work)
{
sql_work_t* sql_work = work->data;
tf_ssb_record_thread_busy(sql_work->ssb, true);
tf_trace_t* trace = tf_ssb_get_trace(sql_work->ssb);
tf_trace_begin(trace, "sql_async_work");
sql_work->start_time = uv_hrtime();
sql_work->thread_id = uv_thread_self();
sqlite3* db = tf_ssb_acquire_db_reader(sql_work->ssb);
sqlite3_set_authorizer(db, tf_ssb_sqlite_authorizer, sql_work->ssb);
sqlite3_stmt* statement = NULL;
@ -507,7 +503,7 @@ static void _tf_ssb_sqlAsync_work(uv_work_t* work)
}
sqlite3_set_authorizer(db, NULL, NULL);
tf_ssb_release_db_reader(sql_work->ssb, db);
sql_work->end_time = uv_hrtime();
tf_ssb_record_thread_busy(sql_work->ssb, false);
tf_trace_end(trace);
}
@ -516,7 +512,6 @@ static void _tf_ssb_sqlAsync_after_work(uv_work_t* work, int status)
sql_work_t* sql_work = work->data;
tf_trace_t* trace = tf_ssb_get_trace(sql_work->ssb);
tf_trace_begin(trace, "sql_async_after_work");
tf_ssb_record_thread_time(sql_work->ssb, (int64_t)sql_work->thread_id, sql_work->end_time - sql_work->start_time);
JSContext* context = tf_ssb_get_context(sql_work->ssb);
uint8_t* p = sql_work->rows;
while (p < sql_work->rows + sql_work->rows_count)