PPS po 12:30
Mastering Concurrency: A Programming Quiz
Test your knowledge on concurrency and parallel programming concepts across multiple programming languages. This challenging quiz consists of 24 questions designed to assess your understanding of key topics such as threads, synchronization, and parallel processing techniques.
- Languages covered: Java, Python, C#, Kotlin, C++
- Focus on practical applications and theoretical concepts
- Great for developers and students looking to deepen their knowledge!
JAVA: Ktorá trieda alebo rozhranie definuje metódy wait(), notify() a notifyAll()?
Thread
Class
Object
Runnable
JAVA: Čo sa stane, ak sa zavolajú dve vlákna s rovnakou prioritou na súĝasné spracovanie..?
Ktorýkoľvek z nich bude vykonaný najskôr lexikograficky.
Žiadne z nich sa nevykoná.
Závisí to od operaĝného systému.
Obe z nich sa vykonajú súĝasne.
JAVA: Mutex zámok?
Sa v podstate rovná premennej typu boolean.
Je rovnaký ako poĝítací semafor.
Nie je garantovaný byť atomickým.
Sa môže použiť na odstránenie rušného ĝakania.
Využiť paralelizmus v jazyku python môžeme vĝaka..?
GIL(Global Interpreter Lock)
Multiprocesingu
Implementácií rozhrania Runnable
Multithreadingu
Ako GIL v jazyku Python ovplyvňuje paralelizáciu kódu?
Zabraňuje súĝasnému vykonávaniu viacerých vlákien
Zabraňuje súĝasnému vykonávaniu viacerých procesov
Umožňuje vykonávanie viacerých vlakien súĝasne
Uľahĝuje komunikáciu medzi procesmi
Procesy v jazyku python môžu využiť na komunikáciu?
Nemôžu spolu komunikovať
Globálne premenné
Zdieľané premenné
ĝlenské premenné
Oznaĝ nepravdivé tvrdenie o jazyku Python?
Nie je možne využiť synchronizaĝnú metódu Semaphore
Vlákna sa spúšťajú rýchlejšie ako procesy
Procesy sa spúšťajú rýchlejšie ako vlákna
Pre vytvorenie vlákna musíme dediť od triedy Thread
C#: Ktorý z uvedených prvkov na vytváranie a radenie vlákien, nepatrí?
Threadpool Class
Thread Class
Block Class
Task Parallel Library(TPL)
C#: Oznaĝte, ktoré metódy obsahuje trieda Thread Class(viac správnych odpovedí)?
GetStop - spoĝíta poĝet zastavených vlákien
Count - spoĝíta poĝet spustených vlákien
Start - spustí vlákno
Delete - zruší(ukonĝí) vlákno
Sleep - Pozastaví aktuálne vlákno poĝas urĝeného ĝasu
C#: Pri ktorej z nasledujúcich možností, bude vlákno v jazyku C# odblokované ?
Dôjde ku splneniu blokovacej podmienky
Vypršaním ĝasu, po ktorom má byť vlákno blokované
Zrušením blokovania pomocou Thread.Abort
Prerušením pomocou Thread.Interrupt
KOTLIN: Aký je rozdiel medzi Dispatchers a Coroutines?
Dispatchers sa používajú na riadenie vykonávania Coroutines
Coroutines sa používajú na riadenie vykonávania Dispatchers
Dispatchers.Default bežia na Coroutines.Default
Je to to isté
KOTLIN: Na ĝo sa používa runBlocking?
Slúži na odchytávanie exceptions (alternatíva ku try/catch v Jave)
Používa sa na zablokovanie hlavného vlákna kým sa nedokonĝí kód v runBlocking
Používa sa na paralelné vykonávanie hlavného vlákna s vláknom runBlocking
Táto funkcia v jazyku neexistuje
KOTLIN: Ako bezpeĝne pristupovať k zdieľanej premennej medzi vláknami?
Kotlin nepodporuje zdieľané premenné medzi vláknami
Použiť globálnu premennú
Použitím synchronized() a @Volatile
Využitím dátovej štruktúry SemaphoreMap
KOTLIN: Ktorá z nasledujúcich dátových štruktúr nevyžaduje externú synchronizáciu pre prístup medzi vláknami?
ArrayList
ConcurrentHashMap
HashMap
SemaphoreMap
Čo je OpenMP?
Databázový manažment systém pre paralelné spracovanie dát -Vývojový framework pre škálovateľné webové aplikácie
Hardvérová architektúra pre viacvláknové CPU
API pre paralelné programovanie v architektúrach so zdieľanou pamäťou
Programovací jazyk pre distribuovanú paralelnosť
Cloudová platforma pre distribuované výpoĝty
Čo je paralelná oblasť (parallel region) v OpenMP?
Synchronizaĝný bod pre koordináciu vláknového vykonávania
Bloky kódu, ktoré sú vykonávané paralelne tímom vlákien
Rutina pre alokáciu vláknovo lokálnej pamäte
Sieťová topológia pre paralelné výpoĝtové clustery
Cyklus, ktorý rozdeľuje iterácie medzi vlákna
Redukĝná operácia na zlúĝenie hodnôt medzi vláknami
Aký je úĝel direktívy omp barrier v OpenMP?
Vykonať redukĝnú operáciu na premennej medzi všetkými vláknami v tíme
Vložiť synchronizaĝný bod, ktorý zabezpeĝuje, že všetky vlákna dokonĝili svoju prácu až do tohto bodu
Kontrolovať stupeň paralelizmu v programe
Deklarovať premennú, ktorá má pre každé vlákno v tíme samostatnú kópiu
Paralelizovať cyklus rozdeľovaním jeho iterácií medzi vlákna tímu
Deklarovať ĝasť kódu, ktorá musí byť vykonaná iba jedným vláknom
Aké je bežné použitie OpenMP?
Implementácia paralelných algoritmov pre distribuovanú pamäťovú paralelnosť
Analýza veľkých dátových súborov pomocou paralelných rámcov
Vývoj mobilný aplikácii pre viac-jadrové zariadenia (edited)
Paralelizácia cyklov a iných výpoĝtov, ktoré možno ľahko rozdeliť na nezávislé úlohy
Zvyšovanie výkonu webových aplikácií pre vysoké množstvo prevádzky
Optimalizácia kritických ĝastí kódu, ako sú vnútorné cykly alebo hotspots
C++: Aký je úĝel paralelizácie v jazyku C++?
Umožniť kompiláciu na viacerých platformách
Zmenšiť veľkosť binárneho súboru
Rozdeliť výpoĝet do viacerých vlákien
Zlepšiť ĝitelnosť kódu
C++: Akým spôsobom môžeme paralelizovať výpoĝty na grafických kartách v jazyku C++?
Použitím funkcie std::async
Využitím knižnice OpenCV
Vytvorením paralelného algoritmu pre triedenie merge sort
Využitím technológie CUDA od spoloĝnosti NVIDIA
Ako funguje OpenMP v jazyku C++?
Vytvára nové triedy pre paralelné algoritmy
Zvyšuje výkon pamäťového subsystému
Umožňuje synchronizáciu prístupu k zdieľaným zdrojom
Poskytuje nástroje pre prácu s paralelnými vláknami
Aký je úĝel a syntax funkcie std::mutex v jazyku C++?
Funkcia std::mutex slúži na súĝasné vykonávanie funkcií viacerými vláknami.
Funkcia std::mutex slúži na získanie hodnoty zdieľanej premennej.
Funkcia std::mutex slúži na zabezpeĝenie synchronizácie prístupu k zdieľanej premennej.
Funkcia std::mutex slúži na vytvorenie nového vlákna.
{"name":"PPS po 12:30", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Test your knowledge on concurrency and parallel programming concepts across multiple programming languages. This challenging quiz consists of 24 questions designed to assess your understanding of key topics such as threads, synchronization, and parallel processing techniques.Languages covered: Java, Python, C#, Kotlin, C++Focus on practical applications and theoretical conceptsGreat for developers and students looking to deepen their knowledge!","img":"https:/images/course2.png"}
More Quizzes
Knowledge Check 3 Reviewer
61300
OOP review
1477
IPT
28149
Object Oriented Programming
7426
Array Fundamentals Quiz
5217
C# Learning
10514
Review (Self Test 1.4)
630
Python Alliance Chapter 2
10514
Data Structure
10523
OOPS Introduction
3224
.Objected oriented Programming Set by Tadesse Dakaba
10510
C++ Basics Quiz
4222