tensorflow:: מָנָה:: LoaderHarness

#include <loader_harness.h>

LoaderHarness הוא יישומון מנהל שימושים להיאחז ולדבר על Loader בעוד היא מחזיקה אותו.

סיכום

זה עוקב אחר המצב הכללי של כאלה 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
}
enum
מצב servable הבסיסית, מנקודת המבט של LoaderHarness ולצורך תקשורת בינה לבין מנהל .

תפקידים ציבוריים

DoneQuiescing ()
Status
מעביר את המצב ל-kQuiesced, מה שאומר שאין יותר נקודות ידיות חיות לשרת זה זמין ב-frontend.
Error (const Status & status)
void
מעביר את המצב ל-kError ומפעיל את 'options_.error_callback'.
Load ()
Status
מעברים כדי kLoading, נציגים servable :: Load (), ואז מעברים בין אם כדי kReady אם טען () מצליח, או כדי kError (ו "options_ מפעילה.
LoadApproved ()
Status
מעברים ל-kLoadApproved.
LoadRequested ()
Status
מעביר את מצב הרתמה ל-kLoadRequested אם המצב הנוכחי שלה הוא kNew.
StartQuiescing ()
Status
מעביר את המצב ל-kQuiescing, מה שאומר שאנחנו לא רוצים לתת עוד ידיות לשרת הזה.
Unload ()
Status
מעברים כדי kUnloading, נציגי servable :: לפרוק (), ואז מעברי kDisabled כאשר לפרוק () נעשים.
UnloadRequested ()
Status
מעביר את מצב הרתמה ל-kUnloadRequested אם המצב הנוכחי שלה הוא kReady.
additional_state ()
T *
מקבל את המצב הנוסף.
cancel_load_retry ()
bool
id () const
ServableId
מחזירה את המזהה של ההגשה הבסיסית.
loader () const
מחזיר מצביע למטעין העטוף.
loader_state_snapshot ()
ServableStateSnapshot< T >
מחזירה את תמונת המצב הכוללת הנוכחית של ההגשה הבסיסית.
loader_state_snapshot () const
ServableStateSnapshot< std::nullptr_t >
set_cancel_load_retry (bool value)
void
מבטל ניסיון מחדש לטעון את הנתון להגשה.
state ()
מחזירה את המצב הנוכחי של ניתן להגשה הבסיסית.
status ()
Status
האם משהו השתבש עם הגשה הזה.

פונקציות סטטיות ציבוריות

StateDebugString ( State state)
string

מבנים

tensorflow :: המשרתים :: LoaderHarness :: אפשרויות

אפשרויות להגדיר LoaderHarness .

טיפוסים ציבוריים

מדינה

 State

מצב servable הבסיסית, מנקודת המבט של LoaderHarness ולצורך תקשורת בינה לבין מנהל .

לא שווה ערך למצבים הניתנים להגשה סמנטיים ב-servable_state.h.

מעברים חוקיים: kNew>kLoading>kReady>kQuiescing>kQuiesced>kUnloading>kDisabled וכן: any_state>kError.

נכסים
kDisabled

'מטעין _-> לפרוק () ' סיים.

kError

התרחשה שגיאה, או במהלך "מטעין _-> Load () " או מחוץ הרתמה (וצוינה לרתמה באמצעות קריאה שגיאה () ).

kLoadApproved

חומר ההגשה אושר לטעינה, למשל

הוקצו לכך משאבים.

kLoadRequested

המנהל התבקש לטעון את קובץ ההגשה הזה.

kLoading

'מטעין _-> Load () ' כבר נקרא.

kNew

מצב התחלתי.

kQuiesced

הניתן להגשה הפך ללא זמין להגשה.

kQuiescing

הניתן להגשה לא יהיה זמין להגשה.

kReady

'מטעין _-> Load () ' הצליח.

kUnloadRequested

המנהל התבקש לפרוק את קובץ ההגשה הזה.

kUnloading

"מטעין _-> לפרוק () " כבר נקרא.

תפקידים ציבוריים

DoneQuiescing

Status DoneQuiescing()

מעביר את המצב ל-kQuiesced, מה שאומר שאין יותר נקודות ידיות חיות לשרת זה זמין ב-frontend.

בשלב זה, אנו יכולים לפרוק את האובייקט הזה.

דורש: המצב הוא kQuiescing כאשר קוראים אותו. אחרת DCHECK-נכשל, עובר למצב kError ומפעיל 'options_.error_callback'.

שְׁגִיאָה

void Error(
  const Status & status
)

מעביר את המצב ל-kError ומפעיל את 'options_.error_callback'.

לִטעוֹן

Status Load()

מעברים כדי kLoading, נציגים servable :: Load (), ואז מעברים בין אם כדי 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.

דורש: המצב הוא kLoadRequested כאשר נקרא. אחרת DCHECK-נכשל, עובר למצב kError ומפעיל 'options_.error_callback'.

Load Requested

Status LoadRequested()

מעביר את מצב הרתמה ל-kLoadRequested אם המצב הנוכחי שלה הוא kNew.

המבחן-ו-השינוי נעשה transactionally, ולכן שיטה זו יכולה לשמש כדי להבטיח כי לכל היותר אחד טען () בקשה יכולה להמשיך.

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()

מעביר את מצב הרתמה ל-kUnloadRequested אם המצב הנוכחי שלה הוא kReady.

המבחן-ו-השינוי נעשה transactionally, ולכן שיטה זו יכולה לשמש כדי להבטיח כי לכל היותר אחד טען () בקשה יכולה להמשיך.

מצב_נוסף

T * additional_state()

מקבל את המצב הנוסף.

מחזירה nullptr אם הסוג אינו תואם או אם הוא לא הוגדר.

cancel_load_retry

bool cancel_load_retry()

תְעוּדַת זֶהוּת

ServableId id() const 

מחזירה את המזהה של ההגשה הבסיסית.

מעמיס

Loader * loader() const 

מחזיר מצביע למטעין העטוף.

הבעלות נשארת עם מחלקה זו.

loader_state_snapshot

ServableStateSnapshot< T > loader_state_snapshot()

מחזירה את תמונת המצב הכוללת הנוכחית של ההגשה הבסיסית.

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()

מחזירה את המצב הנוכחי של ניתן להגשה הבסיסית.

סטָטוּס

Status status()

האם משהו השתבש עם הגשה הזה.

אם המצב הוא kError, זה לא יהיה תקין. אם לא בסדר, את השגיאה יכולה להיות משהו שהתרחש בתוך מקור או SourceAdapter , ב Loader , ב מנהל , או בכל מקום אחר. כל השגיאות הנוגעות להגשה מדווחות כאן, ללא קשר למקור.

~LoaderHarness

 ~LoaderHarness()

חוקי להרוס אם המצב הנוכחי הוא אחד של kNew, kDisabled או kError.

צ'ק נכשל אם הוא מופר.

פונקציות סטטיות ציבוריות

StateDebugString

string StateDebugString(
  State state
)