جریان تنسور:: خدمت:: LoaderHarness

#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 {
kNew ,
kLoadRequested ,
kLoadApproved ,
kLoading ,
kReady ,
kUnloadRequested ,
kQuiescing ,
kQuiesced ,
kUnloading ,
kDisabled ,
kError
}
شمارش
دولت از 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_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' را فراخوانی می کند.

LoadApproved

Status LoadApproved()

انتقال به kLoadApproved.

REQUIRES: حالت kLoadRequested هنگام فراخوانی است. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.

LoadRequested

Status LoadRequested()

اگر وضعیت فعلی آن kNew باشد، وضعیت مهار را به kLoadRequested منتقل می کند.

آزمون و تغییر میگردد انجام می شود، بنابراین این روش می توان برای اطمینان حاصل شود که حداکثر یک بار () درخواست می توانید ادامه دهید.

LoaderHarness

 LoaderHarness(
  const ServableId & id,
  std::unique_ptr< Loader > loader,
  const Options & options
)

LoaderHarness

 LoaderHarness(
  const ServableId & id,
  std::unique_ptr< Loader > loader,
  std::unique_ptr< T > additional_state,
  const Options & options
)

سازنده برای ایجاد یک مهار با حالت اضافی که یک مدیر به آن نیاز دارد.

StartQuiescing

Status StartQuiescing()

حالت را به kQuiescing تغییر می‌دهد، به این معنی که ما می‌خواهیم دیگر دسته‌ای را به این قابل سرویس دهی ندهیم.

نیاز: حالت kUnloadRequested زمانی که فراخوانی می شود. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.

تخلیه کنید

Status Unload()

انتقال به kUnloading، نمایندگان به Servable :: خالی کردن ()، سپس انتقال به kDisabled که خالی کردن () انجام شده است.

نیاز: حالت هنگام فراخوانی kQuiesced می شود. در غیر این صورت DCHECK-ناقص می شود، به حالت kError منتقل می شود و 'options_.error_callback' را فراخوانی می کند.

UnloadRequested

Status UnloadRequested()

اگر وضعیت فعلی آن kReady باشد، وضعیت مهار را به kUnloadRequested منتقل می کند.

آزمون و تغییر میگردد انجام می شود، بنابراین این روش می توان برای اطمینان حاصل شود که حداکثر یک بار () درخواست می توانید ادامه دهید.

حالت_اضافی

T * additional_state()

حالت اضافی را می گیرد.

اگر نوع با هم مطابقت نداشته باشد یا تنظیم نشده باشد، nullptr را برمی‌گرداند.

cancel_load_retry

bool cancel_load_retry()

شناسه

ServableId id() const 

شناسه Servable زیرین را برمی‌گرداند.

لودر

Loader * loader() const 

یک اشاره گر را به لودر پیچیده شده برمی گرداند.

مالکیت برای این طبقه باقی می ماند.

loader_state_snapshot

ServableStateSnapshot< T > loader_state_snapshot()

عکس فوری وضعیت کلی فعلی Servable زیربنایی را برمی‌گرداند.

loader_state_snapshot

ServableStateSnapshot< std::nullptr_t > loader_state_snapshot() const 

set_cancel_load_retry

void set_cancel_load_retry(
  bool value
)

بارگذاری مجدد قابل ارائه را لغو می کند.

این بهترین تلاش است، و یک پیشدستی نمی بار () که در حال حاضر اتفاق می افتد، تماس فقط پس از آن.

اگر مجدد لغو می شود، servable می رود را به یک دولت وابسته به آخرین بار () به نام بر روی آن. اگر آخرین بار () موفق بود، آن را در دولت kReady شود، دیگری در kError.

دولت

State state()

وضعیت فعلی Servable زیرین را برمی‌گرداند.

وضعیت

Status status()

این که آیا مشکلی در مورد این سرویس پذیر رخ داده است.

اگر حالت kError باشد، این حالت ناموفق خواهد بود. اگر OK، خطا می تواند چیزی که در یک رخ داده است منبع یا SourceAdapter ، در لودر در مدیر یا هر جای دیگر. تمام خطاهای مربوط به قابل ارائه، صرف نظر از مبدا، در اینجا گزارش می شود.

~LoaderHarness

 ~LoaderHarness()

قانونی برای تخریب اگر وضعیت فعلی یکی از kNew، kDisabled یا kError باشد.

در صورت نقض، بررسی انجام نمی شود.

توابع استاتیک عمومی

StateDebugString

string StateDebugString(
  State state
)