Как масштабировать потребителя кафки в реальном времени без перебалансирования задержки?

Ответ погрешён в сообщении об ошибке:

существует метод clone, но следующие ограничения параметров не выполнялись: T : std::clone::Clone

blockquote>

Когда вы получаете Clone (и многие другие автоматически производные типы), он добавляет Clone привязку к всем родовым типам. Используя rustc -Z unstable-options --pretty=expanded, мы можем видеть, что это делается:

impl <'a, T: ::std::clone::Clone + 'a> ::std::clone::Clone for Foo<'a, T> {
    #[inline]
    fn clone(&self) -> Foo<'a, T> {
        match *self {
            Foo { t: ref __self_0_0 } =>
            Foo{t: ::std::clone::Clone::clone(&(*__self_0_0)),},
        }
    }
}

В этом случае оценка не нужна, потому что общий тип находится за ссылкой.

На данный момент вам нужно будет реализовать Clone самостоятельно. Для этого есть проблема с ржавчиной, но это сравнительно редкий случай с обходным способом.

0
задан Tomer Lev 25 March 2019 в 20:11
поделиться