小编lem*_*ify的帖子

如何在Rust中获取没有扩展名的文件路径?

请帮助我找到一种优雅的方式来获取没有扩展名的文件路径; 从路径或其他东西切断文件扩展名.

file-extension filepath rust

7
推荐指数
2
解决办法
3281
查看次数

使用mysql2/promise时如何关闭sql连接?

我有这样的 nodejs 代码:

var mysql = require('mysql2/promise');

mysql.createConnection({
    host: "localhost",
    user: "root",
    password: "123123",
    database: "mydatabase"
})
.then((connection) => connection.execute("SELECT * FROM mytable"))
.then(([rows, fields]) => {
    console.log(rows);
});
Run Code Online (Sandbox Code Playgroud)

当我执行它时,应用程序打印数据库行数组,然后仍在运行。似乎发生这种情况是因为连接未释放。之后如何释放console.log

我试过这种方式:

var mysql = require('mysql2/promise');

mysql.createConnection({
    host: "localhost",
    user: "root",
    password: "123123",
    database: "mydatabase"
})
.then((connection) => {
    connection.execute("SELECT * FROM mytable")
    .then(([rows, fields]) => {
        console.log(rows);
        connection.release();
    });
});
Run Code Online (Sandbox Code Playgroud)

但结果是TypeError: this.connection.release is not a function

对不起我的英语不好。

有任何想法吗?

javascript mysql node.js promise

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

Rust和trait引用中的多态性(特征对象?)

我正在Rust中编写一个带有控制台提示界面的进程内存扫描程序.

我需要扫描仪类型,如winapi扫描仪或ring0驱动程序扫描仪,所以我试图实现多态.

我现在有以下结构:

pub trait Scanner {
    fn attach(&mut self, pid: u32) -> bool;
    fn detach(&mut self);
}

pub struct WinapiScanner {
    pid: u32,
    hprocess: HANDLE,
    addresses: Vec<usize>
}

impl WinapiScanner {
    pub fn new() -> WinapiScanner {
        WinapiScanner {
            pid: 0,
            hprocess: 0 as HANDLE,
            addresses: Vec::<usize>::new()
        }
    }
}

impl Scanner for WinapiScanner {
    fn attach(&mut self, pid: u32) -> bool {
        let handle = unsafe { OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid) };
        if handle == 0 as HANDLE { …
Run Code Online (Sandbox Code Playgroud)

polymorphism rust

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