Advertisement
Guest User

Untitled

a guest
Apr 4th, 2019
252
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.77 KB | None | 0 0
  1. error[E0277]: `K` cannot be sent between threads safely
  2. --> src/hltimedcache.rs:139:13
  3. |
  4. 139 | tokio::run_async(async {
  5. | ^^^^^^^^^^^^^^^^ `K` cannot be sent between threads safely
  6. |
  7. = help: within `(K, bool)`, the trait `std::marker::Send` is not implemented for `K`
  8. = help: consider adding a `where K: std::marker::Send` bound
  9. = note: required because it appears within the type `(K, bool)`
  10. = note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(K, bool)>`
  11. = note: required because it appears within the type `hashbrown::map::HashMap<K, bool>`
  12. = note: required because of the requirements on the impl of `std::marker::Sync` for `lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>`
  13. = note: required because it appears within the type `[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>; 256]`
  14. = note: required because of the requirements on the impl of `std::marker::Sync` for `smallvec::SmallVecData<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>; 256]>`
  15. = note: required because it appears within the type `smallvec::SmallVec<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>; 256]>`
  16. = note: required because it appears within the type `dhashmap::DHashMap<K, bool>`
  17. = note: required because it appears within the type `hltimedcache::HLTimedCacheInner<K, V>`
  18. = note: required because it appears within the type `&hltimedcache::HLTimedCacheInner<K, V>`
  19. = note: required because of the requirements on the impl of `std::marker::Send` for `&&hltimedcache::HLTimedCacheInner<K, V>`
  20. = note: required because it appears within the type `[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]`
  21. = note: required because it appears within the type `std::future::GenFuture<[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]>`
  22. = note: required because it appears within the type `impl std::future::Future`
  23. = note: required by `tokio::async_await::run_async`
  24.  
  25. error[E0277]: `K` cannot be shared between threads safely
  26. --> src/hltimedcache.rs:139:13
  27. |
  28. 139 | tokio::run_async(async {
  29. | ^^^^^^^^^^^^^^^^ `K` cannot be shared between threads safely
  30. |
  31. = help: within `(K, bool)`, the trait `std::marker::Sync` is not implemented for `K`
  32. = help: consider adding a `where K: std::marker::Sync` bound
  33. = note: required because it appears within the type `(K, bool)`
  34. = note: required because of the requirements on the impl of `std::marker::Sync` for `hashbrown::raw::RawTable<(K, bool)>`
  35. = note: required because it appears within the type `hashbrown::map::HashMap<K, bool>`
  36. = note: required because of the requirements on the impl of `std::marker::Sync` for `lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>`
  37. = note: required because it appears within the type `[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>; 256]`
  38. = note: required because of the requirements on the impl of `std::marker::Sync` for `smallvec::SmallVecData<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>; 256]>`
  39. = note: required because it appears within the type `smallvec::SmallVec<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<K, bool>>; 256]>`
  40. = note: required because it appears within the type `dhashmap::DHashMap<K, bool>`
  41. = note: required because it appears within the type `hltimedcache::HLTimedCacheInner<K, V>`
  42. = note: required because it appears within the type `&hltimedcache::HLTimedCacheInner<K, V>`
  43. = note: required because of the requirements on the impl of `std::marker::Send` for `&&hltimedcache::HLTimedCacheInner<K, V>`
  44. = note: required because it appears within the type `[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]`
  45. = note: required because it appears within the type `std::future::GenFuture<[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]>`
  46. = note: required because it appears within the type `impl std::future::Future`
  47. = note: required by `tokio::async_await::run_async`
  48.  
  49. error[E0277]: `V` cannot be sent between threads safely
  50. --> src/hltimedcache.rs:139:13
  51. |
  52. 139 | tokio::run_async(async {
  53. | ^^^^^^^^^^^^^^^^ `V` cannot be sent between threads safely
  54. |
  55. = help: within `(u64, hltimedcache::Entry<V>)`, the trait `std::marker::Send` is not implemented for `V`
  56. = help: consider adding a `where V: std::marker::Send` bound
  57. = note: required because it appears within the type `hltimedcache::Entry<V>`
  58. = note: required because it appears within the type `(u64, hltimedcache::Entry<V>)`
  59. = note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(u64, hltimedcache::Entry<V>)>`
  60. = note: required because it appears within the type `hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>`
  61. = note: required because of the requirements on the impl of `std::marker::Sync` for `lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>`
  62. = note: required because it appears within the type `[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>; 256]`
  63. = note: required because of the requirements on the impl of `std::marker::Sync` for `smallvec::SmallVecData<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>; 256]>`
  64. = note: required because it appears within the type `smallvec::SmallVec<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>; 256]>`
  65. = note: required because it appears within the type `dhashmap::DHashMap<u64, hltimedcache::Entry<V>>`
  66. = note: required because it appears within the type `hltimedcache::HLTimedCacheInner<K, V>`
  67. = note: required because it appears within the type `&hltimedcache::HLTimedCacheInner<K, V>`
  68. = note: required because of the requirements on the impl of `std::marker::Send` for `&&hltimedcache::HLTimedCacheInner<K, V>`
  69. = note: required because it appears within the type `[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]`
  70. = note: required because it appears within the type `std::future::GenFuture<[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]>`
  71. = note: required because it appears within the type `impl std::future::Future`
  72. = note: required by `tokio::async_await::run_async`
  73.  
  74. error[E0277]: `V` cannot be shared between threads safely
  75. --> src/hltimedcache.rs:139:13
  76. |
  77. 139 | tokio::run_async(async {
  78. | ^^^^^^^^^^^^^^^^ `V` cannot be shared between threads safely
  79. |
  80. = help: within `(u64, hltimedcache::Entry<V>)`, the trait `std::marker::Sync` is not implemented for `V`
  81. = help: consider adding a `where V: std::marker::Sync` bound
  82. = note: required because it appears within the type `hltimedcache::Entry<V>`
  83. = note: required because it appears within the type `(u64, hltimedcache::Entry<V>)`
  84. = note: required because of the requirements on the impl of `std::marker::Sync` for `hashbrown::raw::RawTable<(u64, hltimedcache::Entry<V>)>`
  85. = note: required because it appears within the type `hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>`
  86. = note: required because of the requirements on the impl of `std::marker::Sync` for `lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>`
  87. = note: required because it appears within the type `[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>; 256]`
  88. = note: required because of the requirements on the impl of `std::marker::Sync` for `smallvec::SmallVecData<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>; 256]>`
  89. = note: required because it appears within the type `smallvec::SmallVec<[lock_api::rwlock::RwLock<parking_lot::raw_rwlock::RawRwLock, hashbrown::map::HashMap<u64, hltimedcache::Entry<V>>>; 256]>`
  90. = note: required because it appears within the type `dhashmap::DHashMap<u64, hltimedcache::Entry<V>>`
  91. = note: required because it appears within the type `hltimedcache::HLTimedCacheInner<K, V>`
  92. = note: required because it appears within the type `&hltimedcache::HLTimedCacheInner<K, V>`
  93. = note: required because of the requirements on the impl of `std::marker::Send` for `&&hltimedcache::HLTimedCacheInner<K, V>`
  94. = note: required because it appears within the type `[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]`
  95. = note: required because it appears within the type `std::future::GenFuture<[static generator@src/hltimedcache.rs:139:36: 149:14 self:&&hltimedcache::HLTimedCacheInner<K, V> _]>`
  96. = note: required because it appears within the type `impl std::future::Future`
  97. = note: required by `tokio::async_await::run_async`
  98.  
  99. error: aborting due to 4 previous errors
  100.  
  101. For more information about this error, try `rustc --explain E0277`.
  102. error: Could not compile `ccl`.
  103.  
  104. To learn more, run the command again with --verbose.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement