|
|
|
|
@ -494,6 +494,11 @@ namespace eval shellthread::manager {
|
|
|
|
|
dict lappend winfo list_client_tids $tidclient |
|
|
|
|
dict set workers $sourcetag $winfo ;#writeback |
|
|
|
|
return [dict get $winfo tid] |
|
|
|
|
} elseif {$existing_settings eq {-raw 0 - file {} -syslog {} -direction out}} { |
|
|
|
|
#review - magic dict is default - shouldn't hard code here. |
|
|
|
|
dict lappend winfo list_client_tids $tidclient |
|
|
|
|
dict set workers $sourcetag $winfo ;#writeback |
|
|
|
|
return [dict get $winfo tid] |
|
|
|
|
} else { |
|
|
|
|
set emsg "shellthread::manager::new_worker error: tag $sourcetag already has a worker with a different configuration\n" |
|
|
|
|
append emsg "existing: $existing_settings\n" |
|
|
|
|
@ -655,7 +660,7 @@ namespace eval shellthread::manager {
|
|
|
|
|
proc unsubscribe {sourcetaglist} { |
|
|
|
|
variable workers |
|
|
|
|
#workers structure example: |
|
|
|
|
#[list sourcetag1 [list tid <tidworker> list_client_tids <clients>] ts_start <ts_start> ts_end_list {}] |
|
|
|
|
#[list sourcetag1 [list tid <tidworker> list_client_tids <clients> ts_start <ts_start> ts_end_list {} workertype message|pipe]] |
|
|
|
|
variable free_threads |
|
|
|
|
set mytid [thread::id] ;#caller of shellthread::manager::xxx is the client thread |
|
|
|
|
|
|
|
|
|
|