/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠGoogle ĠLLC . Ċ Ġ* Ċ Ġ* ĠThis Ġcode Ġmay Ġonly Ġbe Ġused Ġunder Ġthe ĠBSD Ġstyle Ġlicense Ġfound Ġat Ċ Ġ* Ġhttp :// polymer . github . io / LICENSE . txt Ċ Ġ* Ċ Ġ* ĠCode Ġdistributed Ġby ĠGoogle Ġas Ġpart Ġof Ġthis Ġproject Ġis Ġalso Ġsubject Ġto Ġan Ġadditional ĠIP Ġrights Ċ Ġ* Ġgrant Ġfound Ġat Ċ Ġ* Ġhttp :// polymer . github . io / PAT ENTS . txt Ċ Ġ*/ Ċ Ċ package Ġar cs . android . system health . test app Ċ Ċ import Ġjava . util . concurrent . ExecutorService Ċ import Ġjava . util . concurrent . Executors Ċ Ċ /** ĠCollection Ġof ĠArc s ĠJVM Ġexec utors . Ġ*/ Ċ object ĠExec utors Ġ{ ĊĠ Ġ/** ĊĠĠ Ġ* ĠA Ġ[ Scheduler ] Ġis Ġper - arc - per - arch ost Ġsingle - threaded . ĊĠĠ Ġ* ĠEach Ġof Ġthem Ġis Ġmanaged Ġdirectly Ġby Ġthe Ġ[ Scheduler Provider ]. ĊĠĠ Ġ* ĠCan Ġbe Ġoverridden Ġas Ġthe Ġglobally - single - threaded Ġdesign Ġby : ĊĠĠ Ġ* ĠĠĠĠ Ġiterator Ġ{ Ġwhile Ġ( true ) Ġyield ( some Executor ) Ġ} ĊĠĠ Ġ*/ ĊĠ Ġvar Ġs chedulers : ĠIterator < ExecutorService >? Ġ= Ġnull ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠI / O Ġ( dynamic - sizing Ġthread Ġpool ) ĊĠĠ Ġ* ĠOn ĠArc s Ġthere Ġare Ġtwo Ġsorts Ġof Ġdatabases : Ġdata Ġand Ġmetadata . ĊĠĠ Ġ* ĠOn Ġsqlite ĠW AL Ġthere Ġare Ġthree Ġdatabases : Ġmain Ġjournal , Ġw al Ġand Ġw al - index . ĊĠĠ Ġ* ĊĠĠ Ġ* ĠRecomm ending Ġtaking Ġmax Ġsize Ġtwo Ġas Ġdefault Ġas ĊĠĠ Ġ* Ġone Ġcan Ġbe Ġupdating Ġmetadata Ġand Ġanother Ġone Ġis Ġwriting Ġdata , Ġi . e . ĊĠĠ Ġ* ĠThreadPool Executor ( 0 , Ġ 2 , Ġ 1 0 L , ĠTimeUnit . SECONDS , Ġ...) ĊĠĠ Ġ*/ ĊĠ Ġvar Ġio : ĠExecutor Service Ġ= ĠExec utors . new Cached ThreadPool Ġ{ ĊĠĠĠ ĠThread ( it ). apply Ġ{ Ġname Ġ= Ġ" arcs - io " Ġ} ĊĠ Ġ} Ċ } Ċ