هشدار: این API منسوخ شده است و پس از پایدار شدن جایگزینی، در نسخه بعدی TensorFlow حذف خواهد شد.
EagerSession.ResourceCleanupStrategy
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
نحوه پاکسازی منابع TensorFlow را در زمانی که دیگر مورد نیاز نیستند، کنترل می کند.
تمام منابع تخصیص داده شده در طول یک EagerSession
با بسته شدن جلسه حذف می شوند. برای جلوگیری از خطاهای از دست رفتن حافظه، اکیداً توصیه می شود که این منابع را در طول جلسه پاکسازی کنید. به عنوان مثال، اجرای n عملیات در حلقه ای از m تکرار، حداقل n*m منابع را به خود اختصاص می دهد در حالی که در بیشتر موارد، فقط منابع آخرین تکرار هنوز در حال استفاده هستند.
هنگامی که اشیاء TensorFlow دیگر ارجاع نمیشوند، میتوان موارد EagerSession
را به روشهای مختلف مطلع کرد، بنابراین میتوانند به پاکسازی منابعی که در اختیار دارند، ادامه دهند.
روش های ارثی
از کلاس java.lang.Enum بین المللی نهایی | مقایسه با (E arg0) |
بین المللی | مقایسه با (ابجکت arg0) |
بولی نهایی | برابر است (شیء arg0) |
کلاس نهایی <E> | getDeclaringClass () |
بین المللی نهایی | هش کد () |
رشته نهایی | نام () |
بین المللی نهایی | ترتیبی () |
رشته | toString () |
استاتیک <T Enum<T>> T را گسترش می دهد | valueOf (Class<T> arg0، رشته arg1) |
از کلاس java.lang.Object بولی | برابر است (شیء arg0) |
کلاس نهایی<?> | getClass () |
بین المللی | هش کد () |
باطل نهایی | اعلام کردن () |
باطل نهایی | اطلاع رسانی به همه () |
رشته | toString () |
باطل نهایی | صبر کنید (long arg0، int arg1) |
باطل نهایی | صبر کنید (طولانی arg0) |
باطل نهایی | صبر کن () |
از رابط java.lang.Comparable انتزاعی | compareTo (E Enum<E> arg0 را گسترش می دهد) |
مقادیر Enum
EagerSession.ResourceCleanupStrategy نهایی استاتیک عمومی IN_BACKGROUND
منابع بلااستفاده را از یک رشته جدید که در پسزمینه اجرا میشود نظارت و حذف کنید.
این قابل اعتمادترین رویکرد برای پاکسازی منابع TensorFlow است که به قیمت شروع و اجرای یک رشته اضافی اختصاص داده شده به این کار است. هر نمونه EagerSession
رشته خود را دارد که تنها زمانی که جلسه بسته شود متوقف می شود.
این استراتژی به صورت پیش فرض استفاده می شود.
EagerSession.ResourceCleanupStrategy نهایی استاتیک عمومی ON_SAFE_POINTS
منابع بلااستفاده را از موضوعات موجود، قبل یا بعد از اتمام کار دیگری، نظارت و حذف کنید.
هنگامی که تماس با کتابخانه TensorFlow به یک نقطه امن برای پاکسازی می رسد، منابع استفاده نشده آزاد می شوند. این کار به صورت همزمان انجام می شود و ممکن است برای مدت کوتاهی رشته ای که آن تماس را راه اندازی کرده است مسدود کند.
این استراتژی فقط در صورتی باید مورد استفاده قرار گیرد که بنا به دلایلی، نخ اضافی برای پاکسازی اختصاص داده نشود. در غیر این صورت، IN_BACKGROUND
باید ترجیح داده شود.
EagerSession.ResourceCleanupStrategy نهایی استاتیک عمومی ON_SESSION_CLOSE
فقط زمانی که جلسه بسته است منابع را حذف کنید.
تمام منابع تخصیص داده شده در طول جلسه تا زمانی که جلسه به طور صریح بسته نشود (یا از طریق تکنیک سنتی «تلاش با منبع») در حافظه باقی خواهند ماند. هیچ کار اضافی برای پاکسازی منابع انجام نخواهد شد.
این استراتژی می تواند منجر به خطاهای خارج از حافظه شود و استفاده از آن توصیه نمی شود، مگر اینکه محدوده جلسه محدود به اجرای مقدار کمی از عملیات باشد.
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2025-07-25 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-07-25 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# EagerSession.ResourceCleanupStrategy\n\npublic static final enum **EagerSession.ResourceCleanupStrategy** \nControls how TensorFlow resources are cleaned up when they are no longer needed.\n\nAll resources allocated during an `EagerSession` are deleted when the session is\nclosed. To prevent out-of-memory errors, it is also strongly suggest to cleanup those resources\nduring the session. For example, executing n operations in a loop of m iterations will allocate\na minimum of n\\*m resources while in most cases, only resources of the last iteration are still\nbeing used.\n\n`EagerSession` instances can be notified in different ways when TensorFlow objects are\nno longer being referred, so they can proceed to the cleanup of any resources they owned.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n### Inherited Methods\n\nFrom class java.lang.Enum \n\n|----------------------------------|---------------------------------------|\n| final int | compareTo(E arg0) |\n| int | compareTo(Object arg0) |\n| final boolean | equals(Object arg0) |\n| final Class\\\u003cE\\\u003e | getDeclaringClass() |\n| final int | hashCode() |\n| final String | name() |\n| final int | ordinal() |\n| String | toString() |\n| static \\\u003cT extends Enum\\\u003cT\\\u003e\\\u003e T | valueOf(Class\\\u003cT\\\u003e arg0, String arg1) |\n\nFrom class java.lang.Object \n\n|------------------|---------------------------|\n| boolean | equals(Object arg0) |\n| final Class\\\u003c?\\\u003e | getClass() |\n| int | hashCode() |\n| final void | notify() |\n| final void | notifyAll() |\n| String | toString() |\n| final void | wait(long arg0, int arg1) |\n| final void | wait(long arg0) |\n| final void | wait() |\n\nFrom interface java.lang.Comparable \n\n|--------------|-------------------------------------|\n| abstract int | compareTo(E extends Enum\\\u003cE\\\u003e arg0) |\n\nEnum Values\n-----------\n\n#### public static final EagerSession.ResourceCleanupStrategy\n**IN_BACKGROUND**\n\nMonitor and delete unused resources from a new thread running in background.\n\nThis is the most reliable approach to cleanup TensorFlow resources, at the cost of\nstarting and running an additional thread dedicated to this task. Each `EagerSession`\ninstance has its own thread, which is stopped only when the session is closed.\n\nThis strategy is used by default.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n#### public static final EagerSession.ResourceCleanupStrategy\n**ON_SAFE_POINTS**\n\nMonitor and delete unused resources from existing threads, before or after they complete\nanother task.\n\nUnused resources are released when a call to the TensorFlow library reaches a safe point\nfor cleanup. This is done synchronously and might block for a short period of time the thread\nwho triggered that call.\n\nThis strategy should be used only if, for some reasons, no additional thread should be\nallocated for cleanup. Otherwise, [IN_BACKGROUND](/api_docs/java/org/tensorflow/EagerSession.ResourceCleanupStrategy#IN_BACKGROUND) should be preferred.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n#### public static final EagerSession.ResourceCleanupStrategy\n**ON_SESSION_CLOSE**\n\nOnly delete resources when the session is closed.\n\nAll resources allocated during the session will remained in memory until the session is\nexplicitly closed (or via the traditional \\`try-with-resource\\` technique). No extra task for\nresource cleanup will be attempted.\n\nThis strategy can lead up to out-of-memory errors and its usage is not recommended, unless\nthe scope of the session is limited to execute only a small amount of operations.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e"]]