Capitolul 5 - Concurenta Flashcards

1
Q

Ce este un fir de execuție?

curs4 ->2:21

A

Un fir de execuție reprezintă un set de instrucțiuni ce se execută individual și independent de alte seturi de instrucțiuni din aplicație

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Cand apare un deadlock?

A

cand 2 fire de exe se asteapta unul pe celalt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Cand apare RaceCondition?

A

Cand 2 fire vor sa acceseze aceiasi resursa

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Cand apare LiveLock?

A

cand 2 sau mai multe fire care ar trebui sa se opreasca una pe cealalta continua

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Cand apare Starvation?

A

un fir ajunge sa se execute ft ft greu pentru ca sunt mereu alte fire care au o prioritate mai mare.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

De ce preferam utilizarea interfetei Runnable?

A

Pentru a imparti responsabilitatile.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Ce fac urmatoarele 2 instructiuni (t1 si t2 sunt threaduri) :

t1. join();
t2. join();

A

firul main va astepta pana t1 se executa

firul main va astepta pana t2 se executa

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Ce este un executor?

A

o clasa care se ocupa de executarea in paralel a unor clase:

  • Executor
  • ExecutorService (cea mai folosita)
  • ScheduledExecutorService
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Care e diferenta intre executor si task?

A

Task-ul este o instructiune sau un set de instructiuni care se poate executa.
Runnable poate defini un task.
Callable poate defini un task.
Executorul manageuieste in spate un threadpool.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Care este diferenta dintre Runnable si Callable?

A

Runnable nu arunca nicio exceptie si nu retunrneaza niciun rezultat

Callable este modalitatea de a defini un task care returneaza un rezultat

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Ce face newChachedThreadPool?

A

ne creaza un pool cu numar variabil de fire in functie de nr de taskuri tinandu-le active timp de 60 sec.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Unde se preteaza cel mai bine newChachedThreadPool?

A

taskuri multe si scurte

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Unde se preteaza cel mai bine newFixedThreadPool?

A

taskuri de lunga durata

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Ce tip trebuie sa fie task-ul de mai jos ?

service.submit(task);

A

Task tb sa fie de tip Callable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Ce tip trebuie sa fie task-ul de mai jos ?

service.execute(task);

A

Task tb sa fie de tip Execute

How well did you know this?
1
Not at all
2
3
4
5
Perfectly