@@ -32,8 +32,8 @@ type WorkerPool interface {
3232 ScheduleWithTimeout (func (), time.Duration ) error
3333}
3434
35- // DefaultWorkerSettings Settings for DefaultWorkerPool
36- type DefaultWorkerSettings struct {
35+ // DefaultWorkerPoolSettings Settings for DefaultWorkerPool
36+ type DefaultWorkerPoolSettings struct {
3737 // JobQueue
3838
3939 isJobQueueClosedWhenClose bool
@@ -57,7 +57,7 @@ var defaultPanicHandler = func(panic interface{}) {
5757 log .Printf ("panic from worker: %s\n " , string (buf [:runtime .Stack (buf , false )]))
5858}
5959
60- var defaultDefaultWorkerSettings = & DefaultWorkerSettings {
60+ var defaultDefaultWorkerSettings = & DefaultWorkerPoolSettings {
6161 isJobQueueClosedWhenClose : true ,
6262 workerBatchSize : 5 ,
6363 workerSizeStandBy : 5 ,
@@ -79,11 +79,11 @@ type DefaultWorkerPool struct {
7979 lastAccessTime time.Time
8080
8181 // Settings
82- DefaultWorkerSettings
82+ DefaultWorkerPoolSettings
8383}
8484
8585// NewDefaultWorkerPool New a DefaultWorkerPool
86- func NewDefaultWorkerPool (jobQueue * fpgo.BufferedChannelQueue [func ()], settings * DefaultWorkerSettings ) * DefaultWorkerPool {
86+ func NewDefaultWorkerPool (jobQueue * fpgo.BufferedChannelQueue [func ()], settings * DefaultWorkerPoolSettings ) * DefaultWorkerPool {
8787 if settings == nil {
8888 settings = defaultDefaultWorkerSettings
8989 }
@@ -93,7 +93,7 @@ func NewDefaultWorkerPool(jobQueue *fpgo.BufferedChannelQueue[func()], settings
9393 spawnWorkerCh : fpgo.NewChannelQueue [int ](1 ),
9494
9595 // Settings
96- DefaultWorkerSettings : * settings ,
96+ DefaultWorkerPoolSettings : * settings ,
9797 }
9898 go workerPool .spawnLoop ()
9999
@@ -263,6 +263,13 @@ func (workerPoolSelf *DefaultWorkerPool) SetWorkerExpiryDuration(workerExpiryDur
263263 return workerPoolSelf
264264}
265265
266+ // SetDefaultWorkerPoolSettings Set the defaultWorkerPoolSettings
267+ func (workerPoolSelf * DefaultWorkerPool ) SetDefaultWorkerPoolSettings (defaultWorkerPoolSettings DefaultWorkerPoolSettings ) * DefaultWorkerPool {
268+ workerPoolSelf .DefaultWorkerPoolSettings = defaultWorkerPoolSettings
269+ workerPoolSelf .notifyWorkers ()
270+ return workerPoolSelf
271+ }
272+
266273// IsClosed Is the DefaultWorkerPool closed
267274func (workerPoolSelf * DefaultWorkerPool ) IsClosed () bool {
268275 return workerPoolSelf .isClosed .Get ()
0 commit comments