Normal view

There are new articles available, click to refresh the page.
Today — 21 September 2025Curiosity

升级到 MacOS26 之后,双显示器鼠标无法移动到扩展显示器

By: HXHL
21 September 2025 at 10:59
HXHL:

好奇是否有人遇到过类似的问题,两台显示器都是 4k 的,一台 hdmi 一台是 typec 。两台显示器都能正常显示,鼠标只能在主显示器上移动,到边缘的话,扩展显示器可以看到鼠标,但是无法继续移动过去了。

我确定显示器中的编排没有问题。谷歌了很久,也 AI 问了半天,没有解决任何问题。

心理悬疑的 LoveMoney Game 小游戏

By: sfyt2000
21 September 2025 at 10:46
sfyt2000:

如果你喜欢心理悬疑、喜欢被选择“为难”、喜欢那种“每一步都在拷问自我”的紧张体验,那你一定不能错过《 BloodMoney:血色金钱》这款免费心理惊悚网页游戏!

在这里,你只需简单点击就能进入故事——却每一次都要在“能否赚到手术费”和“心理底线”之间自我博弈。游戏中你要帮助 Harvey 通过不断点击和工具升级,努力赚取 25000 美元来救命!但随着每一次升级,选择越来越沉重,偏离人性的边界与道德底线的拷问也更加直接:一切都由你来决定最终结局。

温馨提示:这不是刷分型小游戏,而是一次真正意义上的“心理测试”,每条剧情结局都因你不同的道德抉择而完全不同。全程免费、无需下载,三种完全不同结局,30 分钟快速体验,不管你是内容创作者、心理学爱好者、还是喜欢探索自我心理极限的玩家,这部作品都值得一试!

现在就来 BLOODMONEY ! ,挑战你的道德极限——也许你会发现一个连自己都意想不到的内心!

请求如何购买入门钓鱼装备问题

21 September 2025 at 10:44
jerseyhero:

老爸退休两年了,最近想学着钓鱼打发时间,我想帮他圆这个小爱好~ 我自己对钓鱼完全是门外汉,怕瞎买的装备不合适,反而扫了他的兴。 想请教下有经验的老哥们:新手入门选什么牌子、哪些装备比较合适呀? 不求多专业,轻便好上手、性价比高就行,先让老爸慢慢摸索着玩~

数字货币、加密资产找回

By: Crazyz
21 September 2025 at 10:19
Crazyz:

看到大家讨论数字货币的私钥/助记词,怎么保存是最安全的?( https://www.v2ex.com/t/1160814

如果真的不幸,助记词保管不当,出现下面这些情况,那么可以找我帮你找回:

使用各类去中心化的钱包因为密码遗忘等而无法操作资产的,如常见的 imToken 、库神、blockchain.com 、TrustWallet 、TokenPocket 、Bitcoin Core 、Ledger 、Trezor 、OneKey 等

Keystore 文件忘记密码

  • 备份了 Keystore ,但遗忘了恢复密码,导致无法操作资产

助记词(或称种子密码)记录错误

  • 记录的助记词顺序错乱
  • 记录的助记词单词(或数字)抄写错误
  • 记录的助记词缺失了部分单词(或数字)

助记词(或称种子密码)忘记使用密码(或称支付密码)

联系方式可以看我主页。

数字货币的私钥/助记词,怎么保存是最安全的?

By: jacketma
21 September 2025 at 09:05
jacketma:

前段时间发现 outlook 的密码被爆破了,担心自己放在硬盘上的数据可能泄露,因为使用了 onedrive 存储数据。虽然重要数据是放在个人保管库中,账户被人从埃及、沙特等地成功登入后,还是觉得网络存储不太安全了。

虽然手头一些数字货币不值多少钱,想想那些巨佬都是几亿的数字资产,和我这种身价上千的密钥也是一样长度,大割们都是怎么保存密钥是最安全的?

用过两步验证 Authenticator 、1Password 保存,手机掉了特别麻烦。

想过用个小本子记下来,放保险箱,家里这个保险箱不像公司那种大型的,就一个小箱子小偷拎走也特别轻松。 银行的保险柜到是安全就是太贵了,为了一碟醋去包一顿饺子。硬件钱包还没用过,不知道靠不靠谱,PIN 码、助记词也要找地方单独保存。

大佬们都是怎么保存数字资产,推荐什么方式最安全?

有没有懂行的大佬能谈谈做推荐系统的大公司是否真的很“邪恶”?所谓邪恶就是为了自己的利益牺牲用户的体验和利益。

By: shendaowu
21 September 2025 at 08:57
shendaowu: 所谓牺牲用户体验和利益比如:
为了增加用户的使用时间不推荐对用户真正有用的。
为了增加用户的使用时间对真正的好东西藏着掖着,不一次给用户,而是细水长流。
为了增加用户的消费推荐更贵的商品,而不是有同样功能却更便宜的。

类似的东西我曾经是拍脑袋想出来的,然后在 V 站提过,然后最近看到别人也说过类似的东西。我有那么一点怀疑可能是被我带歪的。我自己瞎说我还能接受,另外我当时说的语气可能也不是很确定,但是影响到别人我就不得不在意了。所以想发帖确认一下。

我略读过两本推荐系统的书。里面有两个我感觉很在意的相关的东西。其一是任何一个能带来利益的算法系统都会被人攻击。推荐系统也一样,可以通过一些手段让恶意的内容生产者之类的人的东西获得更多曝光。可以类比一下恶意的 SEO ,比如内容农场。当然这会牺牲用户的体验。其二是通过简单的打分进行推荐效果并不好,而效果更好的通过列表排序进行推荐的复杂度是 O(n!)。书上好像没说是时间还是空间复杂度。所以有没有可能是地主家也没有余粮呢?或者可能两个原因都有?甚至可能还有其他的原因?比如我还听说那些总提信息茧房的人可能自己就是不愿意尝试新东西的人,因为成熟的推荐系统好像都是会尝试发现用户的其他兴趣的。

拿到雅思 8,接下来一步怎么走?

20 September 2025 at 21:17
juejinloop:

雅思均分 8 (9 9 7 7)。接下来一步怎么走?

毕业后自学编程 (Python),觉得编程有意思所以坚持。但非科班出生,而且感受行业强度太大( the same goes for many other industries ofc),而且自己不太能适应,所以一直没有找正式工作。之后靠编程能力做的副业杂活 keep me afloat just above subsistence level 。自搭梯子后所以对各式各样的 English content 赶上了兴趣,consumed a great deal of podcasts (almost daily),at the same time also turned into an avid reader.

前段段时间打算去把雅思考了,拖这么久是因为一直对 learning for sake of passing tests 有排斥。口语没有准备直接去的时候现场 improvise, thought I'd let my genuine personality come through ;写作只准备了一半,忘了有两篇文章要写(其实还是考前几天玩的太欢准备不够),结果还是比较失望的 (speaking & writing)。

现在拿到成绩了,反而感觉更空虚,想问问大家下一步该怎么走? 欢迎 brain storm or branch out your thoughts!

Proof: https://imgur.com/a/Ja0QyjE

如何在键盘上按出安卓电视遥控器的 ok 键?

By: moudy
21 September 2025 at 05:37
moudy: 给 google tv 电视配了一个体感鼠标加迷你键盘的遥控器,原计划是替换原生遥控器,在 b 站 app 里可以快速输入搜索词。使用的输入法和输入键盘是电视自带的 gboard 。

没想到搜索时敲了第一个字的拼音后,无论是按新遥控器键盘区的回车还是按鼠标区的确认键,系统都会认成回车,开始执行搜索。如果敲好拼音后按原生遥控器的 ok 键,就能识别成确认这个字输入,继续让输入下一个字。

也就是原生遥控器的 ok 键在新遥控器上根本按不出来。请问有没有替代办法,在新遥控器上按出这个确认键?

20250921

21 September 2025 at 09:09

典范条目

金大中,号后广,別名忍冬草,韩国政治家,大韩民国第15任总统,在朴正熙全斗焕独裁政权期间多次因民主斗争入狱,被称为“亚洲曼德拉”,2000年诺贝尔和平奖得主。长期以来,他作为在野党领袖致力于发展韩国民主事业。为此,他曾五次死里逃生,经历了六年狱中生活和十年的软禁流亡生涯,屡次遭到韩国当局囚禁流放车祸谋杀、判处死刑等迫害。最终于1997年当选为韩国第十五任总统,被韩国舆论称为“巨木”。1998年2月25日,金大中正式宣誓就任韩国总统,成功实现了韩国现代史上朝野政党首次政权和平交替。

你知道吗?

优良条目

我在動物園》是视频分享網站YouTube的第一部影片,於2005年4月23日(太平洋夏令時間)上傳。视频由YouTube共同創辦人賈德·卡林姆以「jawed」账号上傳,長度為19秒,主角為賈德本人,拍攝者是他高中時的朋友雅科夫・拉皮茨基。视频中,賈德站在美國加州聖地牙哥動物園的大象展示區前,簡短地評論大象象鼻的長度。

每日图片

新闻动态

拉乌利·莱瓦蒂亚·波拉塔伊瓦奥
拉乌利·莱瓦蒂亚·波拉塔伊瓦奥

历史上的今天

9月21日国际和平日亞美尼亞獨立日1991年)、中華民國國家防災日

1860年
第二次鸦片战争期间,清朝军队在八里桥败于英法联军北京失去屏障,直接导致咸丰帝逃往承德避暑山庄
1898年
清朝慈禧太后發動政變而重返當政,結束光緒帝等人共同推行的政治改革
1937年
英國作家J·R·R·托爾金的奇幻小說《霍比特人》首次出版,也是後來《指环王》前傳。
1965年
在英國強烈不滿下,葡萄牙宣布承認設立在里斯本罗得西亚驻葡萄牙代表处具獨立地位。
1999年
臺灣南投縣發生里氏震级7.3级的強烈地震(圖),造成2,415人死亡、11,305人受傷,為臺灣戰後傷亡損失最慘重的自然災害。


20250921

21 September 2025 at 08:17

From today's featured article

The canister in the National Roman Legion Museum
The canister in the National Roman Legion Museum

The Caerleon pipe burial is a second-century Roman grave associated with the legionary fortress and settlement Isca Augusta in Caerleon. In 1927 building works across the River Usk from the fortress uncovered a grave containing a stone-lined tomb. Within the tomb was a lead canister containing cremated bone fragments, a piece of linen bearing traces of frankincense and a 3.8 cm (1.5 in) broken lead pipe which would originally have reached the surface. This type of burial is rare in Britain and was investigated by the archaeologist Mortimer Wheeler. The anatomist Arthur Keith determined that the bone fragments were of a single adult, confirmed in 2001 by Alice Roberts. Tombs with vertical lead or earthenware pipes are found throughout the Roman Empire, and these features are believed to have facilitated sacrifices and offerings to the departed. In particular, pipe burials are thought to have allowed relatives to pour blood or wine into the container to nourish the soul of the deceased. (Full article...)

Did you know ...

Mary Jo Copeland
Mary Jo Copeland
  • ... that Mary Jo Copeland (pictured) received the Presidential Citizens Medal from Barack Obama for founding Sharing and Caring Hands?
  • ... that Reedsburg Municipal Airport had a water runway during the 1960s for use by the builder of Lake Redstone?
  • ... that Xu Jie avoided the purges of the Great Rites Controversy because he was at home mourning his father?
  • ... that the app Tea has been praised as an aid for women's safety but was sued for jeopardising its users' safety?
  • ... that the Gym Rat in Gaza posts videos of bodybuilding among the rubble of the Israel–Hamas war?
  • ... that the flatbread luchi was historically made with bananas instead of water?
  • ... that German social media personality Maya Leinenbach became vegan after completing a school project on the influence of nutrition and consumption on the environment?
  • ... that Gabriel Green ran for U.S. president on the platform of universal health care, free college education, and releasing secret government information on extraterrestrials?
  • ... that Savannah blockaded Savannah?

In the news

On this day

September 21: International Day of Peace

Chandrashekhar Agashe
Chandrashekhar Agashe

Today's featured picture

Tadej Pogačar

Tadej Pogačar (born 21 September 1998) is a Slovenian professional road cyclist who currently rides for UAE Team Emirates XRG, a UCI WorldTeam based in the United Arab Emirates. His victories include four Tours de France (2020, 2021, 2024 and 2025), the 2024 Giro d'Italia, and nine monuments (the Tour of Flanders twice, Liège–Bastogne–Liège three times, and the Giro di Lombardia four times), as well as the men's road race at the UCI Road World Championships. Comfortable in time-trialing, one-day classic riding and grand-tour climbing, he has been compared to all-round cyclists such as Eddy Merckx and Bernard Hinault as one of the sport's greatest. This photograph shows Pogačar celebrating his victory after stage 3 of the 2022 Tour of Slovenia at Celje Castle.

Photograph credit: Petar Milošević

兄弟们,请求个 netty 的线程问题

By: zhazi
21 September 2025 at 03:30
zhazi:
@Component
@RequiredArgsConstructor
public class WebSocketServer implements ApplicationRunner, DisposableBean {

    @Value("${netty.port}")
    private int port;
    private final EventLoopGroup bossGroup = new NioEventLoopGroup();
    private final EventLoopGroup workerGroup = new NioEventLoopGroup();
    private final ServerBootstrap b = new ServerBootstrap();
    private final Map<String, Channel> map = new HashMap<>();

    @Override
    public void destroy() {
        bossGroup.shutdownGracefully();
        workerGroup.shutdownGracefully();
    }

    @Override
    public void run(ApplicationArguments args) throws Exception {
        b.group(bossGroup, workerGroup)
                .channel(NioServerSocketChannel.class)
                .option(ChannelOption.SO_BACKLOG, 128)
                .childOption(ChannelOption.SO_KEEPALIVE, true)
                .childHandler(new ChannelInitializer<SocketChannel>() {
                    @Override
                    protected void initChannel(SocketChannel ch) {
                        ChannelPipeline pipeline = ch.pipeline();
                        pipeline.addLast(new HttpServerCodec());
                        pipeline.addLast(new HttpObjectAggregator(65536));
                        pipeline.addLast(new WebSocketServerProtocolHandler("/ws", true, 3000L));
                        pipeline.addLast(new WebSocketFrameHandler(map));
                    }
                });
        ChannelFuture future = b.bind(port).sync();
        System.out.println("WebSocket server started on port " + port);
        future.channel().closeFuture().sync();
    }
}

@Slf4j
public class WebSocketFrameHandler extends SimpleChannelInboundHandler<WebSocketFrame> {

    private final Map<String, Channel> map;
    public static final AttributeKey<String> URI_ATTRIBUTE_KEY = AttributeKey.valueOf("URI");

    public WebSocketFrameHandler(Map<String, Channel> map) {
        this.map = map;
    }

    @Override
    public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
        if (evt instanceof WebSocketServerProtocolHandler.HandshakeComplete) {
            WebSocketServerProtocolHandler.HandshakeComplete handshakeComplete = (WebSocketServerProtocolHandler.HandshakeComplete) evt;
            Channel currentChannel = ctx.channel();
            String uri = handshakeComplete.requestUri();
            currentChannel.attr(URI_ATTRIBUTE_KEY).set(uri);
            Channel exist = map.get(uri);
            if (Objects.isNull(exist)) {
                map.put(uri, currentChannel);
                log.info(new Message(uri, currentChannel.id().toString(), 1).toString());
            } else {
                //无效
                exist.close().sync();//明确在 close 执行完成后在重新上线,但是好像没生效一样,直接就输出上线! 1= 上线,0= 下线
                map.put(uri, currentChannel);
                log.info(new Message(uri, currentChannel.id().toString(), 1).toString());
                //无效
                //exist.close().addListener(future -> log.info(new Message(uri, currentChannel.id().toString(), 1).toString()));
                //无效
                //exist.close().sync().addListener(future -> log.info(new Message(uri, currentChannel.id().toString(), 1).toString()));
            }
        } else {
            super.userEventTriggered(ctx, evt);
        }
    }

    @Override
    public void channelInactive(ChannelHandlerContext ctx) {
        Channel channel = ctx.channel();
        String uri = channel.attr(URI_ATTRIBUTE_KEY).get();
        log.info(new Message(uri, channel.id().toString(), 0).toString());
    }
}

日志输出:

2025-09-21 03:16:54.669  INFO 30008 --- [ntLoopGroup-5-1] org.example.WebSocketFrameHandler        : Message{uri='/ws/abc_123', sessionId='86aeadad', status=上线}
2025-09-21 03:16:58.837  INFO 30008 --- [ntLoopGroup-5-2] org.example.WebSocketFrameHandler        : Message{uri='/ws/abc_123', sessionId='fa3a5fbb', status=上线}
2025-09-21 03:16:58.838  INFO 30008 --- [ntLoopGroup-5-1] org.example.WebSocketFrameHandler        : Message{uri='/ws/abc_123', sessionId='86aeadad', status=下线}

我用 netty 提供的 websocket 服务,想达到新设备踢出老设备的在线状态, 但是控制不好状态

预期的效果:

  • 1.86aeadad 上线成功
  • 2.fa3a5fbb 登录检查
  • 3.86aeadad 踢下线
  • 4.fa3a5fbb 上线

日志输出:

  • 1.86aeadad 上线
  • 2.86aeadad 下线
  • 3.fa3a5fbb 上线

但是现在看结果是错误的顺序。

  • 1.86aeadad 上线
  • 2.fa3a5fbb 上线
  • 3.86aeadad 下线

想在这个服务里保证状态的正确,我尝试使用自定义 eventGroup 并且设置线程数 1 来执行代码也不行,也尝试跟 ai 沟通了半宿也研究明白

netty-all 的版本是 4.2.6.Final

想全职独立开发/合伙创业? 这里有些我的感想

By: bbbblue
21 September 2025 at 02:41
bbbblue:

今天有点睡不着,想着写点东西。

差不多 3 年前,因为阿里空降跟了很久的原领导斗争失败离职,新领导 pua 大手子再加上住了次院感觉不能这样下去了,也跑了。。
后面找工作接到几个 offer 但是因为一些原因都没入职,想着自己离 35 越来越近了,而且没房贷压力,是时候看看自己做点东西了,再加上当时在独立开发的朋友需要后端支持就暂时没找工作自己尝试了,后面经历了大半年没啥收入的情况,现在也算能混个温饱了。

也见了不少独立开发/合伙创业的团队(相似的人总是会聚集在一起,之前上班的时候就没遇到过😂)。

开始说一些感想。
以下内容仅限没拿到钱自己开干的,不适用于拿到融资的,有点流水账,但都是真实感受没脑补内容。

能别干就千万别干。精神和肉体的双重打击。

  • 很多人会觉得稳妥点上班的时候干副业,副业大了全身心再投入,时间充裕的固然这样最好,但是本身 996 的,你还是先注意身体好好休息吧;

  • 灵活就业,社保+医保一个月啥都没干就先欠 1000+,而且一直在涨;

  • 一定要和家里人商量清楚,并且有足够的余粮,家里有矿最好。大概率是嗝屁的,而且 gap 了简历爆炸,除非你的作品虽然没成功但是造成了影响力,那对入职一些创业公司还是帮助不小的;

  • 别在家长时间打游戏,家务全包掉,从没下过厨的,下厨房+小红书从空气炸锅/微波炉/电饭煲邪修开始学着做饭做菜;

  • 少参加亲戚聚会,能不去的都推掉;

  • 佛系点,做好长期没收入的准备,别信那种我开发了个 XXX 月入 xxx 美金的文,一半是编的,剩下大部分为了拿投资的+打广告+卖课,最后一小部分是真正的实力+幸运儿,没必要内耗;

  • 文章里 MRR 基本都是骗人的或者乱算的,product hunt 很多都是刷的,不会带来太多真实用户;

  • 没背景很难找投资,海归名校拿各类创业投资会容易很多,大厂高 P 可能离职自带资源,不要和他们比,目标还是做产品养活自己;

  • 感觉有风险的事多问问大模型,有条件接外包糊口注意分辨/保持慎重;

  • 不要对自己产品抱有太大期待,但是要不断迭代他,不要上了没人用就放弃,从零收入到温饱可能会持续几个月甚至是年。不要有这功能上了用户绝对会用起来的想法,千万别有;

  • 对比同赛道产品时要比功能和体验,别比收入(别关注竞对又拿到多少钱,被谁投资了),一笑而过得了,别内耗;

  • 别给自己设定角色,之前只是前端/后端的,一定要自己做全栈,别有事想着找个人来干,特别事别想着拉其他人来创业,除非对方已经在干了,不然耽误不起他们;

  • 别只做产品,官网,各个社媒账号都用起来,有更新就发点东西,流量有时候是莫名其妙的;

  • 每隔一段固定的时间做复盘,多做数据分析,ga 一定要用起来,定期数据汇总后导出整理;

  • 失败才是常态,多和认识的同为独立开发/创业的人沟通;

  • 不要内耗,不要内耗,不要内耗;

  • 可以的话,或者刚开始的话,建议还是找个班上吧。

不过和家里人相处时间更多了是真的,时间也灵活很多。 算是最大的好处了。

从 Android 换 iPhone , 没有边缘左右滑动返回上一面功能, 太难受了

By: zpvip
21 September 2025 at 01:50
zpvip:

多年没用 iPhone 了, 这次看中了 iPhone 的相机, 但新手机上手后,但每次返回都要点左上角, 这也太反人类了吧, 单手操作谁的手指那么长, 以前 Jobs 这样设计是用 iPhone 4, 那是真够得着, 现在这么大屏幕, 够不着了, 不能学学 Android 吗?

在 iPhone 自家的 "Settings" 里面已经可以从屏幕中部往右滑动实现返回上一面, 但这不是全局的:

  • X, Facebook, QQ Mail 的手势就可以这样, 很方便.
  • Gmail, Outlook 从列表进邮件正文后, 左右滑动却是切换上一封邮件下一封邮件, 去列表还得点左上角
  • 在微信里只可以从左边缘往右滑动返回, 但跟左上角点按钮区别不大, 没有人的大拇指那么长.
  • 所有的浏览器也和微信一样只可以从左边缘往右滑动返回, 返回按钮放在了左下角, 大拇指还是按不着.

以后可能要练习左手玩手机, 虽然够不着左上角的返回按钮, 但基本上完成了大半部分操作.

都说 Android 割裂, 但 iPhone 连个 "返回" 这样每天用千百遍的操作都统一不了, 真没有资格嘲笑 Android.

咨询下 claude code github actions 收费问题

By: cochee
21 September 2025 at 01:17
cochee:

在 github 上集成了 claude actions ,目前我是 pro 用户,这个 action 怎么收费呢?创建了 API KEY ,但是我用了几次,在 console 中也看不到使用情况?看起来是免费的?

有没有使用过的人分享下目前这个东西到底是怎么收费的?用起来心里没底

❌
❌