mayli

mayli

V2EX 第 30364 号会员,加入于 2012-12-06 17:51:28 +08:00
今日活跃度排名 5671
根据 mayli 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
mayli 最近回复了
1 天前
回复了 einsdisp 创建的主题 程序员 有支持加密存储的 NVR 硬盘录像机吗
理论上群晖(nas)应该可以,他可以全盘加密,套件又支持 dvr 功能。
1 天前
回复了 pureGirl 创建的主题 程序员 Python 中线程和协程的区别是什么
@lisongeee 有必要补充一下,现在这个 nogil 就是个鸡肋
- 慢,开 nogil 有些优化就用不上,导致解释器变慢
- 没库,一堆 native extension 库用不上了
- py 大头 web server 有一堆 prefork 的比如 gunicorn ,没有 nogil 兼容
- asyncio 的库里也没有 nogil 的
感觉 nogil 之于 3.13 就类似 asyncio 之于 python3.4
1 天前
回复了 nnegier 创建的主题 程序员 可以讲下你看到的编程语言的美吗?
应该没有啥美不美,我觉得更多的是取舍(trade off)
就比如 java vs python

java 明显更工业化,适合巨型项目,py 的话,脚本还可以,短小精悍
更多的是语言适配了某个场景,比如程序员水平,业务需求,开发场景,配合得当就挺美的。
go 代码看起来丑,但是编译玩用起来不用折腾依赖库也很优雅。

另外我见过最让我惊艳的大概是 prolog ,虽然有些人吹 functional ,oop ,啥的,但是 prolog 感觉完全是另一种思路,甚至有种前 gpt 的感觉。
1 天前
回复了 pureGirl 创建的主题 程序员 Python 中线程和协程的区别是什么
@cj323 简单说,底层是一样的,或者只有一层上面出来两套
一套是 blocking io ,另一套是 non-blocking io
大部分的 coroutine 都是解决网络 io ( asyncio 默认都不处理本地文件 io ),场景是大部分时间 cpu 都在等网络 io , 比如 webapp 等 db 之类。
python 的话,除了 GIL 部分,gevent 使用的是隐式的方法,相当于所有进到底层 blocking io 的地方,都包( patch )了一遍,强行改成了异步的办法,库用的是 libuv/libev
asyncio 用的是显式的写法,你所有碰 io 的地方,都得 asyncio ,然后 asyncio 库再去实现一个 event loop ,然后如果你恰巧用的是 uvloop, 那就跟 gevent+libuv 底层一样了。

对于 go ,由于 goroutine 的 async 是语言级,不是一个库,他实际上可以理解为 gevent 的风格,直接底层把 io 部分包好了。

对于 nodejs ,单线程的部分跟 py 很像,甚至 libuv 本身就是 nodejs 出来的,不过语法上也是要显式的使用 async.

tokio 的话,对应的位置应该是 uvloop 。rust 本身 std 有个 async ,tokio 相当于从 0 造了个轮子,包含了 uvloop+libuv 。

语法上要是根据有无显式 async 的话,gevent+go 是一类,其他的都需要显式的写 async await. 底层上除了 tokio/go ,都可以偷懒直接套现有的 event 库,比如 libuv.
综合来看,go 的 async 实现最优雅(原生内置),gevent 对于没有精神洁癖的人来说,性能也过得去,用起来也不难受。
pve, 你买得起 ESXi 吗?
2 天前
回复了 bwijn 创建的主题 Python scrapy 的 item 队列把内存挤爆
CONCURRENT_ITEMS
2 天前
回复了 pureGirl 创建的主题 程序员 Python 中线程和协程的区别是什么
我觉得主要区别是
线程是系统调度器抢占 cpu, 可以把进程 线程强制踢出 cpu
协程大部分是阻塞时主动让出 cpu, coroutine 的 co 我觉得是 cooperative 。
假如一个协程一直不阻塞,调度器也没法踢他。
2 天前
回复了 pureGirl 创建的主题 程序员 Python 中线程和协程的区别是什么
@kaiveyoung 早期的系统进程和线程分的比较开,但是现在的基本上 thread 也会有 pid, 包括 linux.
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   677 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 469ms · UTC 21:43 · PVG 05:43 · LAX 13:43 · JFK 16:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.