6.1 இயங்கக்கூடிய பொருள்கள்

எனவே நாங்கள் தொகுப்பின் மிகப்பெரிய பகுதியை அடைந்தோம். இது எதிர்கால மற்றும் அழைக்கக்கூடிய இடைமுகங்கள் மூலம் முடிவுகளைப் பெறும் திறனுடன் ஒத்திசைவற்ற பணிகளை இயக்குவதற்கான இடைமுகங்களையும், நூல் குளங்களை உருவாக்குவதற்கான சேவைகள் மற்றும் தொழிற்சாலைகளையும் விவரிக்கும்: ThreadPoolExecutor, ScheduledPoolExecutor, ForkJoinPool.

சிறந்த புரிதலுக்காக, இடைமுகங்கள் மற்றும் வகுப்புகளின் சிறிய சிதைவைச் செய்வோம்.

6.2 இயங்கக்கூடிய பொருள்களின் உணர்தல்

Future<V>ஒத்திசைவற்ற செயல்பாட்டின் முடிவுகளைப் பெறுவதற்கான அற்புதமான இடைமுகம். இங்குள்ள முக்கிய முறை கெட் முறை ஆகும், இது மற்றொரு தொடரிழையில் ஒத்திசைவற்ற செயல்பாடு முடிவடையும் வரை தற்போதைய தொடரிழையைத் தடுக்கிறது (நேரமுடிவு அல்லது இல்லாமல்). செயல்பாட்டை ரத்து செய்வதற்கும் தற்போதைய நிலையைச் சரிபார்க்கவும் கூடுதல் முறைகள் உள்ளன. ஃபியூச்சர் டாஸ்க் கிளாஸ் பெரும்பாலும் செயல்படுத்தலாகப் பயன்படுத்தப்படுகிறது.

RunnableFuture<V>- எதிர்காலமானது கிளையண்ட் APIக்கான இடைமுகமாக இருந்தால், ஒத்திசைவற்ற பகுதியைத் தொடங்க RunnableFuture இடைமுகம் ஏற்கனவே பயன்படுத்தப்பட்டுள்ளது. ரன்() முறையை வெற்றிகரமாக முடிப்பது ஒத்திசைவற்ற செயல்பாட்டை முடித்து, கெட் முறை மூலம் முடிவுகளைப் பெற அனுமதிக்கிறது.

Callable<V>- ஒத்திசைவற்ற செயல்பாடுகளுக்கான இயங்கக்கூடிய இடைமுகத்தின் நீட்டிக்கப்பட்ட அனலாக். தட்டச்சு செய்த மதிப்பைத் திருப்பித் தரவும், சரிபார்க்கப்பட்ட விதிவிலக்கை எறியவும் உங்களை அனுமதிக்கிறது. இந்த இடைமுகம் ரன்() முறையைக் கொண்டிருக்கவில்லை என்றாலும், பல java.util.concurrent வகுப்புகள் Runnable உடன் அதை ஆதரிக்கின்றன.

FutureTask<V>- எதிர்கால/இயக்கக்கூடிய எதிர்கால இடைமுகத்தை செயல்படுத்துதல். ஒரு ஒத்திசைவற்ற செயல்பாடு கன்ஸ்ட்ரக்டர்களில் ஒன்றிற்கு உள்ளீடாக இயக்கக்கூடிய அல்லது அழைக்கக்கூடிய பொருள்களின் வடிவத்தில் எடுக்கப்படுகிறது. ஃபியூச்சர் டாஸ்க் வகுப்பானது ஒரு தொழிலாளி நூலில் தொடங்கும் வகையில் வடிவமைக்கப்பட்டுள்ளது, எடுத்துக்காட்டாக, புதிய த்ரெட்(டாஸ்க்).ஸ்டார்ட்() அல்லது த்ரெட்பூல்எக்சிக்யூட்டர் வழியாக. ஒரு ஒத்திசைவற்ற செயல்பாட்டின் முடிவுகள் get(...) முறை மூலம் மீட்டெடுக்கப்படுகின்றன.

Delayed- எதிர்காலத்தில் தொடங்க வேண்டிய ஒத்திசைவற்ற பணிகளுக்கும், அதே போல் தாமத வரிசையிலும் பயன்படுத்தப்படுகிறது. ஒத்திசைவற்ற செயல்பாட்டின் தொடக்கத்திற்கு முன் நேரத்தை அமைக்க உங்களை அனுமதிக்கிறது.

ScheduledFuture<V>- எதிர்கால மற்றும் தாமதமான இடைமுகங்களை இணைக்கும் ஒரு மார்க்கர் இடைமுகம்.

RunnableScheduledFuture<V>- RunnableFuture மற்றும் ScheduledFuture ஆகியவற்றை இணைக்கும் இடைமுகம். கூடுதலாக, பணி ஒரு முறை பணியா அல்லது குறிப்பிட்ட அதிர்வெண்ணில் இயக்கப்பட வேண்டுமா என்பதை நீங்கள் குறிப்பிடலாம்.