Hayrli kun.
Bunday intervyu uchun savol bor.
Ip yaratishning nechta usulini bilasiz? Javoblarda 2 raqami ko'rinadi: yarating
Thread
, uni o'tkazing
Runnable
yoki avlod sinfining ob'ektini
Thread
yarating
run()
. Lekin men hayron bo'ldim: ikkitami? Agar siz
concurrent
, masalan, dan foydalansangiz
Executors.newFixedThreadPool(5)
, ip ob'ektlari yaratilganda, bu usul bajarilganda darhol yoki keyinroq, bajarish uchun vazifalar paydo bo'lganda (axir, ular paydo bo'lmasligi mumkin).
ThreadPoolExecutor
Ushbu zavod usullarining barchasi konfiguratsiya parametrlaridan biriga ega bo'lgan qandaydir konfiguratsiyani qaytaradi.Ushbu
corePoolSize
maydon haqida shunday yozilgan:
corePoolSize
– hovuzda ushlab turish kerak bo'lgan iplar soni,
ular bo'sh turgan bo'lsa ham , agar
allowCoreThreadTimeOut
o'rnatilmagan bo'lsa, Boshqa tomondan, agar topshiriqlar kelmagan bo'lsa, biz 5 ishchini bo'sh turgan holda yaratdik, balki vazifalar kela boshlaganda ular yaratila boshlaydi?
Umuman olganda, savolga javob sifatida 2 yoki 3 variantni yodda tutish mumkinmi?
GO TO FULL VERSION