提交 5f2cc62a authored 作者: Serhij S's avatar Serhij S

switched to parking_lot_rt fork

上级 6aa18939
...@@ -24,7 +24,6 @@ libc = "0.2.153" ...@@ -24,7 +24,6 @@ libc = "0.2.153"
nix = { version = "0.27", features = ["signal"] } nix = { version = "0.27", features = ["signal"] }
object-id = "0.1.3" object-id = "0.1.3"
oneshot = { version = "0.1.6", default-features = false, features = ["std"] } oneshot = { version = "0.1.6", default-features = false, features = ["std"] }
parking_lot = "0.12.1"
pin-project = "1.1.5" pin-project = "1.1.5"
rmodbus = { version = "0.9.4", optional = true } rmodbus = { version = "0.9.4", optional = true }
roboplc-derive = { version = "0.1" } roboplc-derive = { version = "0.1" }
...@@ -43,6 +42,7 @@ env_logger = "0.10" ...@@ -43,6 +42,7 @@ env_logger = "0.10"
log = "0.4.21" log = "0.4.21"
metrics-exporter-prometheus = { version = "0.14.0", optional = true, default-features = false, features = ["http-listener"] } metrics-exporter-prometheus = { version = "0.14.0", optional = true, default-features = false, features = ["http-listener"] }
metrics = { version = "0.22.3", optional = true } metrics = { version = "0.22.3", optional = true }
parking_lot_rt = "0.12.1"
[features] [features]
eapi = ["eva-common", "eva-sdk", "busrt", "tokio", "hostname"] eapi = ["eva-common", "eva-sdk", "busrt", "tokio", "hostname"]
......
use std::collections::VecDeque; use std::collections::VecDeque;
use parking_lot::Mutex; use parking_lot_rt::Mutex;
/// A capacity-limited thread-safe deque-based data buffer /// A capacity-limited thread-safe deque-based data buffer
pub struct DataBuffer<T> { pub struct DataBuffer<T> {
......
use parking_lot::MutexGuard; use parking_lot_rt::MutexGuard;
use std::{ use std::{
io::{Read, Write}, io::{Read, Write},
net::SocketAddr, net::SocketAddr,
......
...@@ -3,7 +3,7 @@ use crate::{Error, Result}; ...@@ -3,7 +3,7 @@ use crate::{Error, Result};
use super::Client; use super::Client;
use super::Communicator; use super::Communicator;
use super::Protocol; use super::Protocol;
use parking_lot::{Mutex, MutexGuard}; use parking_lot_rt::{Mutex, MutexGuard};
use serial::prelude::*; use serial::prelude::*;
use serial::SystemPort; use serial::SystemPort;
use std::io; use std::io;
......
...@@ -5,7 +5,7 @@ use super::{ ...@@ -5,7 +5,7 @@ use super::{
ChatFn, Client, CommReader, Communicator, ConnectionOptions, Protocol, Stream, Timeouts, ChatFn, Client, CommReader, Communicator, ConnectionOptions, Protocol, Stream, Timeouts,
}; };
use core::fmt; use core::fmt;
use parking_lot::{Mutex, MutexGuard}; use parking_lot_rt::{Mutex, MutexGuard};
use std::io::{Read, Write}; use std::io::{Read, Write};
use std::net::{self, TcpStream}; use std::net::{self, TcpStream};
use std::net::{SocketAddr, ToSocketAddrs}; use std::net::{SocketAddr, ToSocketAddrs};
......
...@@ -15,7 +15,7 @@ use crate::{ ...@@ -15,7 +15,7 @@ use crate::{
thread_rt::{Builder, RTParams, Scheduling}, thread_rt::{Builder, RTParams, Scheduling},
DataDeliveryPolicy, Error, Result, DataDeliveryPolicy, Error, Result,
}; };
use parking_lot::RwLock; use parking_lot_rt::RwLock;
pub use roboplc_derive::WorkerOpts; pub use roboplc_derive::WorkerOpts;
use signal_hook::{ use signal_hook::{
consts::{SIGINT, SIGTERM}, consts::{SIGINT, SIGTERM},
......
use std::sync::Arc; use std::sync::Arc;
use parking_lot::Mutex; use parking_lot_rt::Mutex;
use crate::pchannel::{self, Receiver, Sender}; use crate::pchannel::{self, Receiver, Sender};
use crate::{DataDeliveryPolicy, Error, Result}; use crate::{DataDeliveryPolicy, Error, Result};
......
use std::future::Future; use std::future::Future;
use std::sync::Arc; use std::sync::Arc;
use parking_lot::Mutex; use parking_lot_rt::Mutex;
use crate::pchannel_async::{self, Receiver, Sender}; use crate::pchannel_async::{self, Receiver, Sender};
use crate::{DataDeliveryPolicy, Error, Result}; use crate::{DataDeliveryPolicy, Error, Result};
......
...@@ -5,7 +5,7 @@ use crate::{ ...@@ -5,7 +5,7 @@ use crate::{
Error, Result, Error, Result,
}; };
use binrw::{BinRead, BinWrite}; use binrw::{BinRead, BinWrite};
use parking_lot::Mutex; use parking_lot_rt::Mutex;
use rmodbus::{ use rmodbus::{
server::{context::ModbusContext, storage::ModbusStorage, ModbusFrame}, server::{context::ModbusContext, storage::ModbusStorage, ModbusFrame},
ModbusFrameBuf, ModbusProto, ModbusFrameBuf, ModbusProto,
......
...@@ -11,6 +11,8 @@ use thread_rt::{RTParams, Scheduling}; ...@@ -11,6 +11,8 @@ use thread_rt::{RTParams, Scheduling};
pub use log::LevelFilter; pub use log::LevelFilter;
pub use roboplc_derive::DataPolicy; pub use roboplc_derive::DataPolicy;
pub use parking_lot_rt::{Condvar, Mutex, Once, RwLock};
#[cfg(feature = "metrics")] #[cfg(feature = "metrics")]
pub use metrics; pub use metrics;
......
...@@ -2,7 +2,7 @@ use std::{sync::Arc, time::Duration}; ...@@ -2,7 +2,7 @@ use std::{sync::Arc, time::Duration};
use crate::{pdeque::Deque, DataDeliveryPolicy, Error, Result}; use crate::{pdeque::Deque, DataDeliveryPolicy, Error, Result};
use object_id::UniqueId; use object_id::UniqueId;
use parking_lot::{Condvar, Mutex}; use parking_lot_rt::{Condvar, Mutex};
/// An abstract trait for data channels and hubs /// An abstract trait for data channels and hubs
pub trait DataChannel<T: DataDeliveryPolicy> { pub trait DataChannel<T: DataDeliveryPolicy> {
......
...@@ -12,7 +12,7 @@ use std::{ ...@@ -12,7 +12,7 @@ use std::{
use crate::{pdeque::Deque, DataDeliveryPolicy, Error, Result}; use crate::{pdeque::Deque, DataDeliveryPolicy, Error, Result};
use object_id::UniqueId; use object_id::UniqueId;
use parking_lot::{Condvar, Mutex}; use parking_lot_rt::{Condvar, Mutex};
use pin_project::{pin_project, pinned_drop}; use pin_project::{pin_project, pinned_drop};
type ClientId = usize; type ClientId = usize;
......
use std::sync::Arc; use std::sync::Arc;
use parking_lot::{Condvar, Mutex}; use parking_lot_rt::{Condvar, Mutex};
/// A lightweight real-time safe semaphore /// A lightweight real-time safe semaphore
pub struct Semaphore { pub struct Semaphore {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论