JPype 1.0.2 புதுப்பிப்பு, பைத்தானில் இருந்து ஜாவா வகுப்புகளை அணுகுவதற்கான ஒரு நூலகம்

கிடைக்கும் இன்டர்லேயரின் புதிய வெளியீடு JPype 1.0.2, இது பைதான் பயன்பாடுகளை ஜாவா மொழியில் வகுப்பு நூலகங்களுக்கு முழு அணுகலைப் பெற அனுமதிக்கிறது. Python இலிருந்து JPype மூலம், ஜாவா மற்றும் பைதான் குறியீட்டை இணைக்கும் கலப்பின பயன்பாடுகளை உருவாக்க ஜாவா-குறிப்பிட்ட நூலகங்களைப் பயன்படுத்தலாம். Jython போலல்லாமல், JVM க்கு ஒரு பைதான் மாறுபாட்டை உருவாக்குவதன் மூலம் ஜாவாவுடன் ஒருங்கிணைக்கப்படவில்லை, ஆனால் பகிர்ந்த நினைவகத்தைப் பயன்படுத்தி இரண்டு மெய்நிகர் இயந்திரங்களின் மட்டத்தில் தொடர்புகொள்வதன் மூலம் அடையப்படுகிறது. முன்மொழியப்பட்ட அணுகுமுறை நல்ல செயல்திறனை அடைவதற்கு மட்டுமல்லாமல், அனைத்து CPython மற்றும் Java நூலகங்களுக்கும் அணுகலை வழங்குகிறது. திட்டக் குறியீடு வழங்கியது Apache 2.0 இன் கீழ் உரிமம் பெற்றது.

முக்கிய மாற்றங்கள்:

  • ஓவர்லோட் ரெசல்யூஷனைத் தவிர்க்க முறை அழைப்புகளில் ஒரு கேச் சேர்க்கப்பட்டுள்ளது, இது முறைத் தீர்மானத்தின் செயல்திறன் தாக்கத்தை வெகுவாகக் குறைக்கிறது, குறிப்பாக லூப் எக்ஸிகியூஷனின் போது அதே ஓவர்லோட் பல முறை அழைக்கப்பட்டால்.
  • தரவு வகையைப் பொறுத்து, 4 முதல் 100 முறை வரை, பட்டியல்கள், டூப்பிள்கள் மற்றும் இடையகங்களை ஜாவா ப்ரிமிட்டிவ்களின் வரிசைகளுக்கு மாற்றுவது துரிதப்படுத்தப்படுகிறது. வரிசை APIக்குப் பதிலாக, இன்-மெமரி பஃபர்களின் உகந்த செயலாக்கத்தை மாற்றுதல் பயன்படுத்துகிறது. ஒரு பைதான் இடையகத்தை எதிர்கொண்டால், இந்த இடையகங்கள் ஒரே மாதிரியாக இருப்பதால், முதல் உறுப்பு மட்டுமே மாற்றத்திற்காக சோதிக்கப்படும்.
  • பணிநிறுத்தம் செயல்பாடுகளை செயலாக்குகிறது (JPype 1.0.0 இல் செயல்படுத்தப்பட்டது, ஆனால் சேஞ்ச்லாக் தயாரிக்கும் போது தவிர்க்கப்பட்டது). JPype இப்போது JVM பணிநிறுத்தம் வழக்கத்தை அழைக்கிறது, இது அழகாக வெளியேற முயற்சிக்கிறது. இது நடத்தையில் பல மாற்றங்களுக்கு வழிவகுக்கிறது. பின்னணி அல்லாத இழைகள் (ப்ராக்ஸி அழைப்புகள்) இப்போது JVMஐத் திறந்து வைக்க முடியும். அழைப்பு முடிவடையும் வரை ப்ராக்ஸி அழைப்புகள் பணிநிறுத்தம் செய்யப்படும், ஆனால் ஒரு செயலிழப்பு செய்தியைப் பெறும். த்ரெட்கள் எதிர்பார்த்தபடி விதிவிலக்கைக் கையாளும் பட்சத்தில் கோப்புகள் இப்போது சரியாக மூடப்பட்டு வட்டில் ஃப்ளஷ் செய்யப்படும். ஆதார சுத்திகரிப்பு கொக்கிகள் மற்றும் ஃபைனலைசர்கள் செயல்படுத்தப்படுகின்றன. நூல்கள் உருவாகும்போது, ​​AtExit கொக்கிகள் என்று அழைக்கப்படுகின்றன. டீமான் மூலம், பைத்தானில் இருந்து JVM ஐப் பயன்படுத்தும் போது தானியங்கி நூல் இணைப்பு செயல்படுத்தப்படுகிறது. த்ரெட் கிளீனப்பை சரியாக கையாள முடியாத தரமற்ற குறியீடு பணிநிறுத்தம் செய்யப்படும்போது செயலிழந்துவிடும். கூடுதல் ஆவணங்களை பயனர் கையேட்டில் காணலாம்.
  • த்ரோபிலுக்கான ரேப்பர் எதிர்பார்த்த முடிவுக்குப் பதிலாக பொருளுக்கான ரேப்பரைப் பெற்றது, இது பைதான் வகுப்புகளிலிருந்து விசித்திரமான மாற்றங்களுக்கு வழிவகுத்தது.
  • இறக்குமதி அமைப்பில் உள்ள எழுத்துப் பிழைகள் சரி செய்யப்பட்டதால், '»jname» காணப்படவில்லை' என்ற பிழை ஏற்பட்டது.
  • கீபோர்டு இன்டர்ரப்டில் "^C" சரியாக விளம்பரப்படுத்தப்பட்டதை உறுதிசெய்தது.
  • பைதான் 3.5.3 முதல் சின்னங்களில் உள்ள சிக்கல் சரி செய்யப்பட்டது. PySlice_Unpack ஆனது அடுத்தடுத்த பேட்ச் வெளியீட்டில் அறிமுகப்படுத்தப்பட்டது (3.5.4) மற்றும் பயன்படுத்தப்பட்டிருக்கக்கூடாது.
  • numpy.linalg.inv உடன் ஒரு பிழை சரி செய்யப்பட்டது, அது ஒரு செயலிழப்புக்கு வழிவகுத்தது. ஜேவிஎம் மற்றும் சில முட்டாள்தனமான சுவைகளுக்கு இடையேயான தொடர் தொடர்பினால் இந்த சிக்கல் கண்டறியப்பட்டுள்ளது. முன்மொழியப்பட்ட தீர்வு JVM ஐத் தொடங்குவதற்கு முன் numpy.linalg.inv ஐ அழைப்பதாகும்.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்