#include <loader_harness.h>
LoaderHarness یک ویجت است مدیر استفاده برای نگهداری به و صحبت کردن با یک لودر در حالی که آن صاحب آن.
این آهنگ به حالت کلی چنین Servable که مدیر می توانید تعیین که انتقال دولت به در چه زمان است.
پیاده سازی مدیر همچنین می تواند وضعیت اضافی را با هر مهار اضافه کند. به عنوان مثال، یک مدیر می تواند ACL یا ابرداده چرخه حیات را در اینجا قرار دهد. مالکیت توسط مهار حفظ می شود.
این کلاس امن است.
LoaderHarness (const ServableId & id, std::unique_ptr< Loader > loader, const Options & options) | |
LoaderHarness (const ServableId & id, std::unique_ptr< Loader > loader, std::unique_ptr< T > additional_state, const Options & options) سازنده برای ایجاد یک مهار با حالت اضافی که یک مدیر به آن نیاز دارد. | |
~LoaderHarness () قانونی برای تخریب اگر وضعیت فعلی یکی از kNew، kDisabled یا kError باشد. |
State { | شمارش دولت از servable اساسی، از منظر LoaderHarness و به منظور ارتباط بین آن و یک مدیر . |
DoneQuiescing () | Status حالت را به kQuiesced منتقل میکند، به این معنی که دیگر دستگیرههای زنده دیگری برای این سرویسپذیر موجود در قسمت جلو وجود ندارد. |
Error (const Status & status) | void حالت را به kError منتقل می کند و 'options_.error_callback' را فراخوانی می کند. |
Load () | Status انتقال به kLoading، نمایندگان به Servable :: بار ()، سپس انتقال یا به kReady اگر بار () موفق شود، و یا به kError (و options_ را فراخوانی. |
LoadApproved () | Status انتقال به kLoadApproved. |
LoadRequested () | Status اگر وضعیت فعلی آن kNew باشد، وضعیت مهار را به kLoadRequested منتقل می کند. |
StartQuiescing () | Status حالت را به kQuiescing تغییر میدهد، به این معنی که ما میخواهیم دیگر دستهای را به این قابل سرویس دهی ندهیم. |
Unload () | Status انتقال به kUnloading، نمایندگان به Servable :: خالی کردن ()، سپس انتقال به kDisabled که خالی کردن () انجام شده است. |
UnloadRequested () | Status اگر وضعیت فعلی آن kReady باشد، وضعیت مهار را به kUnloadRequested منتقل می کند. |
additional_state () | T * حالت اضافی را می گیرد. |
cancel_load_retry () | bool |
id () const | ServableId شناسه Servable زیرین را برمیگرداند. |
loader () const | Loader * یک اشاره گر را به لودر پیچیده شده برمی گرداند. |
loader_state_snapshot () | ServableStateSnapshot< T > عکس فوری وضعیت کلی فعلی Servable زیربنایی را برمیگرداند. |
loader_state_snapshot () const | ServableStateSnapshot< std::nullptr_t > |
set_cancel_load_retry (bool value) | void بارگذاری مجدد قابل ارائه را لغو می کند. |
state () | وضعیت فعلی Servable زیرین را برمیگرداند. |
status () | Status این که آیا مشکلی در مورد این سرویس پذیر رخ داده است. |
StateDebugString ( State state) | string |
tensorflow :: خدمت :: LoaderHarness :: گزینه | گزینه برای پیکربندی یک LoaderHarness . |
State
دولت از servable اساسی، از منظر LoaderHarness و به منظور ارتباط بین آن و یک مدیر .
معادل حالت های معنایی قابل خدمت در serable_state.h نیست.
انتقالهای معتبر: kNew>kLoading>kReady>kQuiescing>kQuiesced>kUnloading>kDisabled و همچنین: any_state>kError.
خواص | |
---|---|
kDisabled | ، لودر _-> خالی کردن () ، به پایان رسید. |
kError | یک خطا رخ داده است، هم در طول 'لودر _-> بار () ، و یا خارج از مهار (و از طریق یک تماس به به مهار گزارش شد خطای () ). |
kLoadApproved | قابل استفاده برای بارگیری تایید شده است، به عنوان مثال منابعی برای آن در نظر گرفته شده است. |
kLoadRequested | از مدیر درخواست شده است که این سرویس را بارگیری کند. |
kLoading | ، لودر _-> بار () ، نامیده شده است. |
kNew | حالت اولیه |
kQuiesced | قابل ارائه برای ارائه در دسترس نیست. |
kQuiescing | سرویسدهیشده برای ارائه از دسترس خارج میشود. |
kReady | ، لودر _-> بار () ، موفق شده است. |
kUnloadRequested | از مدیر درخواست شده است که این قابل سرویس دهی را تخلیه کند. |
kUnloading | ، لودر _-> خالی کردن () ، نامیده شده است. |
Status DoneQuiescing()
حالت را به kQuiesced منتقل میکند، به این معنی که دیگر دستگیرههای زنده دیگری برای این سرویسپذیر موجود در قسمت جلو وجود ندارد.
در این مرحله، ما می توانیم این شی را تخلیه کنیم.
نیاز: حالت هنگام فراخوانی kQuiesing است. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.
void Error( const Status & status )
حالت را به kError منتقل می کند و 'options_.error_callback' را فراخوانی می کند.
Status Load()
انتقال به kLoading، نمایندگان به Servable :: بار ()، سپس انتقال یا به kReady اگر بار () موفق شود، و یا به kError (و options_ را فراخوانی.
error_callback ') اگر بار () نتواند. این تماس ممکن است مدت زیادی طول بکشد.
ما دوباره Servable::Load() را با توجه به گزینه های تنظیم شده در طول ساخت این کلاس امتحان می کنیم. اگر 1. به max_num_load_retries یا، 2. اگر cancel_load() روی true تنظیم شده باشد، تلاش مجدد را متوقف می کنیم و منصرف می شویم.
نیاز: حالت kLoadApproved هنگام فراخوانی است. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.
Status LoadApproved()
انتقال به kLoadApproved.
REQUIRES: حالت kLoadRequested هنگام فراخوانی است. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.
Status LoadRequested()
اگر وضعیت فعلی آن kNew باشد، وضعیت مهار را به kLoadRequested منتقل می کند.
آزمون و تغییر میگردد انجام می شود، بنابراین این روش می توان برای اطمینان حاصل شود که حداکثر یک بار () درخواست می توانید ادامه دهید.
LoaderHarness( const ServableId & id, std::unique_ptr< Loader > loader, const Options & options )
LoaderHarness( const ServableId & id, std::unique_ptr< Loader > loader, std::unique_ptr< T > additional_state, const Options & options )
سازنده برای ایجاد یک مهار با حالت اضافی که یک مدیر به آن نیاز دارد.
Status StartQuiescing()
حالت را به kQuiescing تغییر میدهد، به این معنی که ما میخواهیم دیگر دستهای را به این قابل سرویس دهی ندهیم.
نیاز: حالت kUnloadRequested زمانی که فراخوانی می شود. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.
Status Unload()
انتقال به kUnloading، نمایندگان به Servable :: خالی کردن ()، سپس انتقال به kDisabled که خالی کردن () انجام شده است.
نیاز: حالت هنگام فراخوانی kQuiesced می شود. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.
Status UnloadRequested()
اگر وضعیت فعلی آن kReady باشد، وضعیت مهار را به kUnloadRequested منتقل می کند.
آزمون و تغییر میگردد انجام می شود، بنابراین این روش می توان برای اطمینان حاصل شود که حداکثر یک بار () درخواست می توانید ادامه دهید.
T * additional_state()
حالت اضافی را می گیرد.
اگر نوع با هم مطابقت نداشته باشد یا تنظیم نشده باشد، nullptr را برمیگرداند.
bool cancel_load_retry()
ServableId id() const
شناسه Servable زیرین را برمیگرداند.
Loader * loader() const
یک اشاره گر را به لودر پیچیده شده برمی گرداند.
مالکیت برای این طبقه باقی می ماند.
ServableStateSnapshot< T > loader_state_snapshot()
عکس فوری وضعیت کلی فعلی Servable زیربنایی را برمیگرداند.
ServableStateSnapshot< std::nullptr_t > loader_state_snapshot() const
void set_cancel_load_retry( bool value )
State state()
وضعیت فعلی Servable زیرین را برمیگرداند.
Status status()
این که آیا مشکلی در مورد این سرویس پذیر رخ داده است.
اگر حالت kError باشد، این حالت ناموفق خواهد بود. اگر OK، خطا می تواند چیزی که در یک رخ داده است منبع یا SourceAdapter ، در لودر در مدیر یا هر جای دیگر. تمام خطاهای مربوط به قابل ارائه، صرف نظر از مبدا، در اینجا گزارش می شود.
~LoaderHarness()
قانونی برای تخریب اگر وضعیت فعلی یکی از kNew، kDisabled یا kError باشد.
در صورت نقض، بررسی انجام نمی شود.
string StateDebugString( State state )
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2020-08-12 بهوقت ساعت هماهنگ جهانی.