package Ġcom . ton y ode v . dispatch . thread Ċ Ċ import Ġcom . ton y ode v . dispatch . Thread Type Ċ import Ġcom . ton y ode v . dispatch . utils .* Ċ Ċ /** Ċ Ġ* ĠThe Ġdefault ĠThread Handler ĠFactory Ġused Ġby Ġthe Ġlibrary . Ċ Ġ* Ġ*/ Ċ class ĠDefault Thread Handler Factory : ĠThread Handler Factory Ġ{ ĊĊĠĠĠ Ġ@ Volatile ĊĠĠĠ Ġprivate Ġvar Ġnew Thread Count Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun Ġcreate ( thread Type : ĠThread Type ): ĠThread Handler Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthread Handler Ġ= Ġwhen ( thread Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread Type . BACKGROUND Ġ-> ĠDefault Thread Handler ( THREAD _ BACKGROUND ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread Type . IO Ġ-> ĠDefault Thread Handler ( THREAD _ IO ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread Type . NETWORK Ġ-> ĠDefault Thread Handler ( THREAD _ NETWORK ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread Type . COMP UT ATION Ġ-> ĠDefault Thread Handler ( THREAD _ COMP UT ATION ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread Type . NEW Ġ-> Ġget New Thread Handler () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread Type . MAIN Ġ-> ĠDefault Thread Handler ( THREAD _ MAIN _ NO _ UI ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread Type . TEST Ġ-> ĠTest Thread Handler ( THREAD _ TEST ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġstart Thread Handler IfNot Active ( thread Handler ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthread Handler ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate ( thread Name : ĠString ?): ĠThread Handler Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġget New Thread Handler ( thread Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget New Thread Handler ( name : ĠString ? Ġ= Ġnull ): ĠThread Handler Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthread Name Ġ= Ġif Ġ( name Ġ== Ġnull Ġ|| Ġname . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Dispatch Queue ${ ++ new Thread Count }" ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġthread Handler Ġ= ĠDefault Thread Handler ( thread Name ) ĊĠĠĠĠĠĠĠ Ġstart Thread Handler IfNot Active ( thread Handler ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthread Handler ĊĠĠĠ Ġ} Ċ Ċ }