Salt la conținut

SUBIECTE NOI
« 1 / 5 »
RSS
A fost adoptata legea privind alc...

La multi ani Costi

Vreau sa ofer imprumut pentru con...

Usa de garaj la o magazie existenta
 The worst of evil (2023)

Proiect de lege: Romanii vor achi...

Dopuri / casti amortizare zgomot ...

Ce componente trebuie sa schimb d...
 2 job-uri de 8 ore simultan.

VW e-Up second hand sau alternati...

Reparatie scara mozaic vechi

Cablu curte destinat deplasarii l...
 Sfat de cumparare pentru un Jagua...

La mulți ani @mishu_bz!

La mulți ani @kyrre!

PF vinde 3 autoturisme ce se inti...
 

Batalia async in limbaje compilate

- - - - -
  • Vă rugăm să vă autentificați pentru a răspunde
24 răspunsuri în acest subiect

#19
coniac

coniac

    Member

  • Grup: Members
  • Mesaje: 497
  • Înscris: 17.12.2019
Nu vrei sa intelegi
Asyncio din Python face "multithreading" pe un singur thread, numai ca "threadurile" astea se numes task-uri
Si nu o sa crezi, e mai performat decat modulul threading, care foloseste threaduri adevarate, probabil si din cauza GIL

Cam asa arata un cod cu asyncio

https://ibb.co/FHtfqCj


Intre timp expresia "yield from" din respectivul cod a fost inlocuita de await , cred ca in Python 3.5 sau 3.6

#20
bostanu_4u

bostanu_4u

    Junior Member

  • Grup: Junior Members
  • Mesaje: 213
  • Înscris: 30.12.2020
asyncio.sleep din Python este sau nu asincron?
Dar sleep din PHP ?

#21
coniac

coniac

    Member

  • Grup: Members
  • Mesaje: 497
  • Înscris: 17.12.2019
asyncio.sleep este un wrapper al functiei normale sleep
Cum am zis, au facut un event loop propriu
La fel se poate face in PHP

Da este async

https://ibb.co/MPFnqry

#22
bostanu_4u

bostanu_4u

    Junior Member

  • Grup: Junior Members
  • Mesaje: 213
  • Înscris: 30.12.2020
Este o diferenta mare intre "se poate face" si "exista deja implementat in limbaj"
Pe sistemul se poate face, orice limbaj permite async.

In limbajele care nu suporta nativ async, nu lipsa event loop-ului nativ e problema, ci lipsa unor set de functii uzuale asincrone.
Event loop faci in orice limbaj. Await, cum ai zis si tu il ai prin yield, care e doar o sintaxa convenabila, pentru ca la fel de bine poti implementa await-ul prin functii callback. Dar functiile async unde-s?
Stii cum ar arata un wrapper async pentru sleep in php?
Un script cu sleep(), executat separat prin exec din script-ul principal, adica un proces php separat. Nu e deloc tot una cu sleep async nativ. Este ineficient si te lovesti de multe limitari

#23
coniac

coniac

    Member

  • Grup: Members
  • Mesaje: 497
  • Înscris: 17.12.2019
Ti-am indicat proiecte php async Sunt pe bune
Asyncio are la baza 2 chestii: generatoare si non-blocking IO
Pe care la ai si in PHP
Ergo, se poate face si in PHP

https://stackoverflo...mented/52026721

#24
coniac

coniac

    Member

  • Grup: Members
  • Mesaje: 497
  • Înscris: 17.12.2019
Cu asta poti implementa event loop

https://www.php.net/...ream-select.php

"although if you need to be checking and running other code concurrently"
Cauta exemple in cod C linux ca sa intelegi

Dar ai
https://www.php.net/...ok.parallel.php

De exemplu
Mai sunt si libevent, pthreads , pht

Se poate si in PHP

#25
bostanu_4u

bostanu_4u

    Junior Member

  • Grup: Junior Members
  • Mesaje: 213
  • Înscris: 30.12.2020
Eu ma retrag din discutia asta ca am senzatia ca vorbesc cu peretii.
Am luat azi un camion de lemne. Ce zici, se poate sa le tai cu fierastraul ?
Nu vrei sa intelegi distinctia dintre suport nativ si "merge si asa" cu dezavantajele aferente, care le vezi si in documentatia PHP plina de "warning" si "caution"

Anunturi

Chirurgia endoscopică a hipofizei Chirurgia endoscopică a hipofizei

"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală.

Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale.

www.neurohope.ro

Utilizatori activi: 1

0 membri, 1 vizitatori, 0 utilizatori anonimi

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate