Kas ir deadlock? Kā tas atšķiras no race condition? Kā izvairīties no deadlock, pat ja nav iespējams iepriekš noteikt bloķēšanas secību?
Java
Ja jūs projektētu GC, kādas atkritumu savākšanas pieejas jūs zināt, izņemot pieejamības grafika pārlūkošanu?
Izstrādājiet RecommenderService ar metodēm getTop(User user, int limit) un addDocument(Document document), izmantojot atmiņā esošo glabātuvi
Cik smags ir rādītājs? Kas tas ir?
Kam ir nepieciešams steks un kam heap? Kāda ir atšķirība?
Kas ir heap (kalns)?
Kāpēc tests krita ar NullPointerException un kā to labot?
Kā Java notiek objektu dzēšana no heap? Pastāsti par Garbage Collector.
Salīdziniet šādu koda fragmentu veiktspēju, kas kopē elementus no Integer masīva uz int masīvu un otrādi, ieskaitot gadījumu, kad tiek izveidoti jauni Integer objekti no int vērtībām: ```java int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { x[i] = y[i]; } } ``` ```java int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { y[i] = x[i]; } } ``` ```java int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { y[i] = new Integer(x[i]); } } ``` Analizējiet un paskaidrojiet šo pieeju veiktspējas un uzvedības atšķirības.
Kura SOLID principa ir bojāta pašreizējā īstenošanā, kur pakalpojums ir stingri saistīts ar konkrētu glabāšanas īstenojumu (ArrayList)?
Kādus procesu savienojuma (IPC) veidus jūs zināt Unix operētājsistēmas saskarnes līmenī?
Kādēļ ir nepieciešams synchronized? Ko izmantotu, lai īstenotu drošu skaitītāju vietā synchronized?
int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { y[i] = new Integer(x[i]); } }
Kāda problēma var rasties ražošanas vidē, ja vairākas REST pieprasījumi tiek veikti paralēli?
Kā primitivs parādās stekā un kā heapā?
Izšifrējiet saīsinājumu ACID un paskaidrojiet katru īpašību.
Kādi ir pašreizējās pieejas trūkumi, kad katru reizi izsaucot getTop, visa saraksta kārtošana?
/** * Meklēt divus skaitļus masīvā, kuru summa ir vienāda ar doto skaitli * <p> * Uzrakstiet funkciju, kas kā pirmo argumentu pieņem nesakārtotu pozitīvu skaitļu masīvu * un kā otro argumentu pozitīvu skaitli. Funkcija atgriež true, ja masīvā * ir 2 skaitļi, kuru summa ir vienāda ar otro argumentu. * <p> * Ievade: ([10, 15, 3, 7], 17) * Izvade: true */
Kā pareizi ieviest atkarības (Dependency Injection) pakalpojumā — kura pieeja ir vēlams?
Kas ir sistēmas izsaukums fork Unix ģimenes operētājsistēmās?