Cusboonaysiinta JPype 1.0.2, maktabad loogu talagalay gelitaanka xiisadaha Java ee Python

La heli karo sii daayo cusub ee interlayer JPype 1.0.2, kaas oo u oggolaanaya codsiyada Python inay si buuxda u helaan maktabadaha fasalka ee luqadda Java. Iyadoo JPype ee Python, waxaad isticmaali kartaa Java-gaar ah maktabadaha si aad u abuurto codsiyada isku dhafan ee isku dara Java iyo Python code. Si ka duwan Jython, is dhexgalka Java laguma gaaro iyada oo loo abuurayo kala duwanaansho Python ee JVM ah, laakiin iyada oo loo marayo isdhexgalka heerka labada mashiinnada farsamada iyadoo la adeegsanayo xusuusta la wadaago. Habka la soo jeediyay ayaa u oggolaanaya ma aha oo kaliya in la gaaro waxqabad wanaagsan, laakiin sidoo kale waxay bixisaa dhammaan CPython iyo maktabadaha Java. Koodhka mashruuca qaybiyey shatiga ku haysta Apache 2.0.

Isbeddellada ugu waaweyn:

  • Kaydka ayaa lagu daray habka wicitaanada si looga fogaado xallinta culeyska xad dhaafka ah, taasoo si weyn u yareyneysa saameynta waxqabadka ee xallinta habka, gaar ahaan haddii culeyska xad dhaafka ah la yiraahdo marar badan, sida inta lagu jiro fulinta wareegga.
  • Laga bilaabo 4 ilaa 100 jeer, iyada oo ku xidhan nooca xogta, wareejinta liisaska, tuples iyo buffers ee diyaarinta hore ee Java waa la dedejiyey. Beddelku waxa uu isticmaalaa habaynta la wanaajiyey ee kaydka xusuusta, halkii laga isticmaali lahaa taxanaha API. Marka Python-ka-xejisku la kulmo, kaliya qaybta ugu horreysa ayaa la hubiyaa beddelidda, maaddaama kuwan kaydiyayaashu yihiin kuwo isku mid ah.
  • Hagaajinta hawlgallada xidhitaanka (oo lagu hirgeliyay JPype 1.0.0, laakiin waa la booday markii la diyaarinayey liiska beddelka). JPype hadda waxay wacdaa xiritaanka JVM, kaas oo isku dayaya inuu si qurux badan uga baxo. Tani waxay keentaa dhowr isbedel oo ku yimaada habdhaqanka. Xargaha aan asalka ahayn (wacitaanka wakiillada) hadda waxay sii hayn karaan JVM-ga mid furan ilaa ay dhammeeyaan. Wicitaannada wakiillada waxay ka shaqayn doonaan xidhitaanka ilaa wicitaanku dhammeeyo, laakiin waxay heli doonaan farriin ilmo iska soo rididda. Faylasha hadda si sax ah ayaa loo xiray waxaana lagu daadiyay saxanka haddii duntu ay u qabato ka reebista sidii la filayay. Qaboojiyaha nadiifinta agabka iyo dhamaystirayaasha waa la fuliyay. Marka dunta la dhaliyo, qabooyinka AtExit ayaa loo yaqaan. Iyada oo loo marayo daemon, dhejinta dunta tooska ah ayaa la hirgeliyaa marka la isticmaalayo JVM-ka Python. Koodhka buggy ee aan si fiican u xamili karin nadiifinta dunta waxay u badan tahay inuu soo laadlaadsan doono marka xidhitaanka la fuliyo. Dukumeenti dheeri ah ayaa laga heli karaa buug-gacmeedka isticmaale
  • Duubabka loogu talagalay Throwable wuxuu helay baakadaha shayga halkii laga heli lahaa natiijada la filayo, taas oo keentay beddelaadyo yaab leh oo ka yimid fasallada Python.
  • Qoraal go'an oo ku jira nidaamka soo dejinta taasoo keentay cilada ''jnameΒ» lama helin'.
  • La hubiyay in "^C" si sax ah loogu dallacsiiyay Kiiboodhka Dhex-dhexaadinta.
  • Dhibaatada go'an ee calaamadaha ilaa Python 3.5.3. PySlice_Unpack waxaa lagu soo bandhigay balastar xiga (3.5.4) mana ahayn in la isticmaalo.
  • Waxaa lagu hagaajiyay bug leh numpy.linalg.inv taasoo keentay shil. Arrinku waxa uu raadraacay xidhiidhka dunta ee u dhexeeya JVM iyo dhadhan tiro badan. Xalka la soo jeediyay waa in la waco numpy.linalg.inv ka hor inta aan la bilaabin JVM.

Source: opennet.ru

Add a comment