pub struct PidFileContents {
pub pid: i32,
pub started_at_secs: i64,
}Expand description
Parsed pidfile contents. Format on disk is three newline-terminated lines:
<pid>
heddle-agent
<start_time_unix_secs>The marker line lets agent stop reject a pidfile that wasn’t written
by us. Combined with the process-identity check in
is_heddle_process, this closes the “PID got reused after a dirty
crash” hole that the reviewer flagged: even if <pid> now belongs to
some unrelated process, we won’t SIGTERM it.
Fields§
§pid: i32§started_at_secs: i64Implementations§
Trait Implementations§
Source§impl Clone for PidFileContents
impl Clone for PidFileContents
Source§fn clone(&self) -> PidFileContents
fn clone(&self) -> PidFileContents
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PidFileContents
impl Debug for PidFileContents
Source§impl PartialEq for PidFileContents
impl PartialEq for PidFileContents
Source§fn eq(&self, other: &PidFileContents) -> bool
fn eq(&self, other: &PidFileContents) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for PidFileContents
impl StructuralPartialEq for PidFileContents
Auto Trait Implementations§
impl Freeze for PidFileContents
impl RefUnwindSafe for PidFileContents
impl Send for PidFileContents
impl Sync for PidFileContents
impl Unpin for PidFileContents
impl UnsafeUnpin for PidFileContents
impl UnwindSafe for PidFileContents
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request