小编rob*_*asm的帖子

StatelessWidget 与在性能方面返回 Widget 的函数

在使用 aStatelessWidget和 a 时,性能方面有什么区别function returning a Widget吗?

我很清楚至少在这个flutter 的 repo 问题中指出的差异与性能没有关系。

事实是,我有一些同事声称这functional widgets在性能方面是最差的,但在阅读了一些有关该主题的内容后,我找不到任何可以证明该断言的结论性文件,因此对此事的任何形式的澄清都将是非常欢迎!

据我所知,它们之间的唯一区别是在使用 a 的情况下const Widget,这似乎可以避免重建阶段。

performance layout flutter statelesswidget

21
推荐指数
1
解决办法
2751
查看次数

Rust 中的 HMAC-SHA1

我正在尝试应用 HMAC-SHA1 以检查某些内容,但无法使其正常工作。

这些是我的测试:

#[cfg(test)]
mod tests {

    use crypto::hmac::Hmac;
    use crypto::mac::Mac;

    use crypto::sha1::Sha1;
    use std::str::from_utf8;

    const BODY_CONTENT: &'static str = r#"bodystring"#;
    const KEY: &[u8] = b"secret_key";
    const COMPUTED_HMAC: &'static str = "97049623b0e5d20bf6beb5313d80600e3d6abe56";

    #[test]
    fn test_hmac_sha1() {
        let mut mac= Hmac::new(Sha1::new(), KEY);
        mac.input(BODY_CONTENT.as_bytes());
        let result = mac.result();
        let code = result.code();
        assert_eq!(COMPUTED_HMAC.as_bytes(), code);
        assert_eq!(COMPUTED_HMAC, from_utf8(&code).unwrap_or("failed"));
    }

    #[test]
    fn test_hmac_sha1_direct() {
        let hash = hmacsha1::hmac_sha1(KEY, BODY_CONTENT.as_bytes());
        assert_eq!(COMPUTED_HMAC.as_bytes(), hash);
        assert_eq!(COMPUTED_HMAC, from_utf8(&hash).unwrap_or("failed"));
    }
}
Run Code Online (Sandbox Code Playgroud)

我使用这个网站是为了COMPUTED_HMAC通过使用一个字符串 ( BODY_CONTENT) 和一个密钥 …

cryptography hmac hmacsha1 rust

5
推荐指数
1
解决办法
1404
查看次数