Saturday, November 27, 2021

V2EX - 技术

V2EX - 技术

V2EX - 技术


有没有办法让 RDP 在局域网内性能跑到最佳

Posted: 27 Nov 2021 04:01 AM PST

现在 RDP 服务已经能在最新的 win10 下跑得很好了,但是即使通过注册表、组策略设置了硬件加速、最大帧率,感觉实际的画面质量已经和直接接线一样了,但帧率还是不足,比如打开个 b 站的 60 帧视频,看起来和普通的一模一样。RDP 有网络延迟这个我可以接受,但是我看监视器甚至平时还没 100M ( 10MB/s ),

但不得不说 RDP 算得上是最强的 Windows 远程桌面了吧。

如何备份或迁移安卓手机的聊天记录?

Posted: 27 Nov 2021 03:49 AM PST

迫于手机 256G 的内存被我用满了,微信占的空间太多,想把微信卸掉重新安装一下,但是不想丢失聊天记录(包括文字,语音,图片和视频),有什么方法备份吗?我知道好像有一种方法是把聊天记录备份到电脑端的微信,然后再恢复,这个可行吗, 有更好的方法吗

发现 JB 家的 IDE 有时候识别代码会出现莫名其妙的 BUG

Posted: 27 Nov 2021 03:33 AM PST

比如在 CLion 这里面,insert 后面那个函数总是提示说我前面少了分号,但实际上根本没少分号。

LthJl2CZRdBSp1I

如果我在 insert 后面加一个 delete 函数,原先报错的 delete 函数反而不报错了。

Q4jCixe6vlA7NYk

用 IDEA 写 Vue 的时候,也有的地方说什么我出现了特殊字符,但实际上没有出现,而且代码可以正常运行

请教各位,如何解决 warning: stack protector not protecting local variables: variable length buffer

Posted: 27 Nov 2021 02:36 AM PST

编译器: https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/arm-eabi/gcc-linaro-7.5.0-2019.12-x86_64_arm-eabi.tar.xz

test.c:

struct Foo{     char a[32]; // 32 and above will produce warning, but 31 and below will not     char d[9]; // 9 and above will produce warning, but 8 and below will not };  int main() {     struct Foo foo = {0};     (void)(foo);     return 0; } 

编译命令及输出:

$ arm-eabi-gcc -Wstack-protector -fstack-protector-all -fstack-check -o test test.c test.c: In function 'main': test.c:6:5: warning: stack protector not protecting local variables: variable length buffer [-Wstack-protector]  int main()      ^~~~ 

实际代码中的结构体类似上文的 Foo ,我不能改,但是 main 我可以改,请问怎么改 main 能解决这个 warning ?

感谢各位!

各位也可以去 https://stackoverflow.com/questions/70133887/how-can-i-fix-warning-stack-protector-not-protecting-local-variables-variable 上回答,我 Google 了一圈都没找到怎么解。

vs 中如何解决 C++的“常量中有换行符”

Posted: 27 Nov 2021 02:34 AM PST

环境:Windows 上使用 vs

总是遇到那种定义一个中文字符串std::string = "你好";(不一定是这段中文),然后 vs 就编译报错"常量中有换行符"。

我看了网上的文章,大概意思就是会收到这三个的影响:

  • 源文件本身的编码格式
  • /source-charset
  • /execution-charset

我理解一下,就是:

  • 源文件里面的二进制,是根据源文件本身的编码格式来存的。
  • 比如\x45\xAB 这两个字节存在源码文件的某个位置上,然后根据source-charset的那种编码格式进行映射,把 \x45\xAB(文件中的存储的字节) <===> 字符 a ,
  • 然后,根据execution-charset的那种编码方式进行映射,字符 a <===> 某几个字节(内存中的存储的字节) ,因为最终你这个字符串要保存到内存中,所以现在就确定下来内存中这个字符串到底存储的哪几个字节。

不知道我上面的流程理解对不对?(我觉得流程理解清楚,这个问题也就好解决了)

而且想再问一下,解决"常量中有换行符"的最佳方案:

  • 正常情况只有一个人写代码的话,应该让这三个因素保持为 什么?
  • 现在我集成别人的 c++代码,他的文件编码格式全是 gb2312 (里面还有中文字符串常量),弄得我有点难搞。

反应式 redis 流程问题

Posted: 27 Nov 2021 02:29 AM PST

return valueOperations.set(regCodeKey, regCode, Duration.of(10, TimeUnit.MINUTES.toChronoUnit()))
.then(reactiveRedisTemplate.hasKey(regCodeObtainRecordKey)
.doOnSuccess(r ->
listOperations.leftPush(regCodeObtainRecordKey, current).doOnSuccess(x -> {
if (!r) {
reactiveRedisTemplate.expire(regCodeObtainRecordKey, Duration.of(30, TimeUnit.DAYS.toChronoUnit())).subscribe();
}
}).subscribe()
))
.doOnSuccess(r -> EmailMessageType.REGISTER.send(Lists.newArrayList(email), Lists.newArrayList(regCode)))
.map(r -> {
if (r) {
return GsonUtil.getGson().toJson(ResponseVO.ResponseCodeMsgMapping.SENDREG_SUCC.getResponse());
} else {
return GsonUtil.getGson().toJson(ResponseVO.ResponseCodeMsgMapping.SYS_ERROR.getResponse());
}
});

11 行的 doOnSuccess 能否在第二行 then 中的操作完全做完才进行(我感觉应该不太行)
如果不行应该怎么改

springcloud gateway 的自定义过滤器中家请求参数 requestParams 没生效,有遇到过的老哥吗

Posted: 26 Nov 2021 11:09 PM PST

                 URI uri = exchange.getRequest().getURI();                 StringBuilder query = new StringBuilder();                 String originalQuery = uri.getRawQuery();                 if (StringUtils.hasText(originalQuery)) {                     query.append(originalQuery);                     if (originalQuery.charAt(originalQuery.length() - 1) != '&') {                         query.append('&');                     }                 }                 params.forEach((key,value) ->{                     query.append(key);                     query.append('=');                     query.append(value);                     query.append('&');                 });                  try {                     URI newUri = UriComponentsBuilder.fromUri(uri).replaceQuery(query.toString()).build(true).toUri();                     ServerHttpRequest request = exchange.getRequest().mutate().uri(newUri).build();                     return chain.filter(exchange.mutate().request(request).build());                 } catch (RuntimeException var8) {                     throw new IllegalStateException("Invalid URI query: \"" + query.toString() + "\"");                 } 

以上这种写法,参考了自带的 AddRequestParameter 过滤器的写法

请问一下,关于分发 mac app 的问题

Posted: 26 Nov 2021 10:32 PM PST

本机开发了一个.app 程序,发给别人后,会显示损坏,我知道这是 gatekeeper 在起作用。

现在问题是,如何直接发给别人不报错直接可以用?

第一步是用 developer id 签名.app 整个包。 第二步是用 notarytool 做.app 公正。

其中第二部必须要安装 xcode 对吗?

有没有什么更简便的方法吗?目前第一步已经完成了。

Elasticsearch 检索多语种混合文档

Posted: 26 Nov 2021 10:02 PM PST

要检索的文档既有中文,也有英文,还有少量带变音符号的词(类似法语德语等其它欧洲语言)。希望检索具有中文分词,去除英文屈折变化与变音符号(比如查 abandon 可以匹配到 abandoned 和Äbandonéd )

如果是纯中文+英文,可以用这样的分析器:
"analyzer": {
"optimizeIK": {
"type": "custom",
"tokenizer": "ik_max_word",
"filter": [ "stemmer" ]
}
}

如果是纯英文加变音符号,可以用这样的分析器:
"analyzer": {
"optimizeIK": {
"type": "custom",
"tokenizer": "standard",
"filter": [ "stemmer", "asciifolding" ]
}
}

但如果三种类型都有,我就不知道要怎么办了。试了下面的写法,发现 asciifolding 过滤器没起作用。感觉是和 ik 冲突了?
"analyzer": {
"optimizeIK": {
"type": "custom",
"tokenizer": "ik_max_word",
"filter": [ "stemmer", "asciifolding" ]
}
}

[求助] 安装 vim 插件的问题

Posted: 26 Nov 2021 10:00 PM PST

用的 plugvim ,.vimrc 配置如下:

call plug#begin('~/.vim/plugged') Plug 'yiouejv/vim-startify' call plug

No comments:

Post a Comment