Kezdőoldal » Számítástechnika » Programozás » Free Pascal-ban írt már...

Free Pascal-ban írt már valaki Multithread (több szálon futó) programot és ha igen, elmagyarázná, miként kell ezt?

Figyelt kérdés

A Wiki rendkívüli bonyolultsággal írja le, nincs valami séma, amit bármely programra alkalmazva működne a dolog?

Tartok tőle hogy nem, mert a Wiki-ben háááááááát azt megértettem, hogy alaposan meg kell ogndolni hogy szükség van -e a többszálúsításra, mert nem egyszerű :(

Sajnos nem igazán találtam jó és megfelelő kulcsszavakat...

Természetesen a lényeg az lenne, hogy minden szál dolgozzon a feladaton, egyfajta párhuzamos munkavégzés, feladatelosztás...

Például az alábbi kód miként futna több szálon?


Program Sorting;

const

n = 999000;

var

data : array [1..n] of integer;

i, j, t: LongInt;

begin

for i := 1 to n do

data[i]:=random(32768);

for i := 1 to n-1 do

begin

for j:=i+1 to n do

begin

if data[i]<data[j] then

begin

t:=data[i];

data[i]:=data[j];

data[j]:=t;

end;

end;

end;

end.



2015. máj. 26. 18:38
1 2
 1/20 anonim ***** válasza:
Hát úgy lehetne hogy például elosztod kétfele, és egy-egy szál sorbarendezi azokat. Aztán az egyik szál meg ezt a kettőt.
2015. máj. 26. 18:57
Hasznos számodra ez a válasz?
 2/20 A kérdező kommentje:

Ennek a kódbeli megvalósítása az amit nem tudok. :-(

Kizárólag OOP alapon lehet? a Wiki OOP alapú példákat mutogat a szálakra, minden szálnál constructor init, destructor done, meg valami üzenetváltások a szálak közt... Számomra irtózatosan bonyolult :( :(

2015. máj. 26. 19:17
 3/20 anonim ***** válasza:
2015. máj. 26. 19:18
Hasznos számodra ez a válasz?
 4/20 A kérdező kommentje:
Be tudnád mutatni egy példával (kóddal) hogy miként lehetne ezt megcsinálni?
2015. máj. 26. 19:19
 5/20 SimkoL ***** válasza:
Javaslom Végh László professzor Delphi Jegyzet 2. rész: [link] 80. oldaltól való olvasását. Nem olyan hosszú és nagyon érthető, példákkal illusztrálva. Ez még egy régebbi jegyzet, az aktualizáltak itt: [link]
2015. máj. 26. 19:58
Hasznos számodra ez a válasz?
 6/20 ejbenjaro ***** válasza:

Itt van az Együtt könnyebb a programozás: Free Pascal című könyv ide vonatkozó néhány oldala: [link]

Szükséged lesz hozzá egy DJVU olvasóra pl itt: [link]

2015. máj. 26. 21:04
Hasznos számodra ez a válasz?
 7/20 anonim ***** válasza:

A párhuzamos programozásról egész estét betöltő előadássorozatot lehetne indítani. Rengeteg olyan hibalehetőség előjöhet ami egyszálú programozás során nem ,egyik leggyakoribb hiba a holtpont.


Egy lehetséges megoldás: pastebin pont com/2B34AQgS

2015. máj. 27. 00:05
Hasznos számodra ez a válasz?
 8/20 anonim ***** válasza:

Szerintem a Pascal ma már csak egy kezdő tanulónyelv, és ha már eljutottál a többszálas programozásig, akkor érdemes lenne váltanod. Ha másért nem, hát azért, mert minél többen használnak egy nyelvet és minél komolyabb célokra, annál könnyebben kapsz segítséget az interneten mindenféle problémákra, mondjuk mert sokan mások is beleütköztek már.

Tudom, hogy nem ez a válasz az eredeti kérdésedre, én egy másik nézőpontról beszélek.

2015. máj. 27. 07:56
Hasznos számodra ez a válasz?
 9/20 SimkoL ***** válasza:
'Szerintem a Pascal ma már csak egy kezdő tanulónyelv' ez valóban így van, csak éppen a Lazarus és a Delphi is az alap Pascalból építkezik. Delphi fórum, tudásbázis pedig nem kevés van, nem is akármilyen tartalommal.
2015. máj. 27. 10:03
Hasznos számodra ez a válasz?
 10/20 anonim ***** válasza:

"'Szerintem a Pascal ma már csak egy kezdő tanulónyelv' ez valóban így van, csak éppen a Lazarus"

Az első 20 legnépszerűbb nyelvbe benne van: [link]


A múltkor eltoltam a tömb 2 tartományra bontását.n = 100000-re elég nézni szerintem. Átírtam megfelelően ha n-t átírjuk akkor megfelelően működjön.

Egyébként a random függvény nem megfelelően működik többszálon, de ettől eltekintettem.

Egy szálon és két szálon is elvégzi a rendezést, de egy szál esetében is nem a főszálon hanem külön létrehoz egy szálat erre. : pastebin pont com/pZZzLXhb

2015. máj. 27. 14:20
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!