V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zjsxwc  ›  全部回复第 82 页 / 共 219 页
回复总数  4372
1 ... 78  79  80  81  82  83  84  85  86  87 ... 219  
2020-11-28 09:09:12 +08:00
回复了 zjsxwc 创建的主题 程序员 php7 怎么比 Java 还快?
@zjsxwc #124 的 php8 19 秒是没开启 jit 成绩,开启 jit 后 php8 达到 14.9 秒,如图

https://i.loli.net/2020/11/28/XhekKo1gyzvTHF6.png



由于 javascript nodejs 不能用 int64 所以没有意义,我就不写了


在 int64 的情况下,求第 300000 个质数耗时

python2.7 65.9 秒
python3.8 62.4 秒
ruby2.7 28.3 秒
php7.2 22 秒
php7.4 20 秒
php8.0 19 秒
php8.0 开启 jit 14.9 秒

golang 10 秒
c++ 9.4 秒
纯 c 9.2 秒
java 8.8 秒
2020-11-28 09:02:06 +08:00
回复了 zjsxwc 创建的主题 程序员 php7 怎么比 Java 还快?
2020-11-27 21:34:44 +08:00
回复了 tyzrj766 创建的主题 PHP PHP 8.0.0 Released!
@meshell

看了一个多小时才看明白,感觉就像,鸟哥在 php5 里面用 yield 生成器,造了个单片机非抢占式多任务系统,php 玩出了操作系统的味道,膜拜鸟哥!
2020-11-27 18:43:05 +08:00
回复了 hxnets 创建的主题 PHP PHP 数据追加数据后的长度问题
@xxbutoo 计算机原理啊
2020-11-27 18:24:07 +08:00
回复了 hxnets 创建的主题 PHP PHP 数据追加数据后的长度问题
function addData33($data)
{
$data = str_split($data,2);
for($i = 0;$i<count($data);$i++)
{
$data[$i] = sprintf("%02x",(hexdec($data[$i]) + 0x33)&0xff);
}
return implode("",$data);
}
2020-11-27 18:12:20 +08:00
回复了 hxnets 创建的主题 PHP PHP 数据追加数据后的长度问题
@hxnets 看来我多虑了,这种根本不用考虑大小端和有无符号整数,

直接无脑读两个字符处理两个字符就好了
function addData33($data)
{
$data = str_split($data,2);
for($i = 0;$i<count($data);$i++)
{
$data[$i] = dechex((hexdec($data[$i]) + 0x33)&0xff);
}
return implode("",$data);
}
2020-11-27 17:36:28 +08:00
回复了 hxnets 创建的主题 PHP PHP 数据追加数据后的长度问题
3689348814741910500 这个值可能不对,因为我是网页计算器算的,但是由于 js 天生不支持 64 位整数所以网页计算器算了这个错误值,你直接用 0x33 33 33 33 33 33 33 33 代替就好了。
2020-11-27 17:00:39 +08:00
回复了 hxnets 创建的主题 PHP PHP 数据追加数据后的长度问题
function addData33($data)
{
$int = null;
eval("\$int = 0x". $data.";");
$r = 3689348814741910500+$int;
return sprintf("%016x", $r);
}
2020-11-27 16:52:54 +08:00
回复了 hxnets 创建的主题 PHP PHP 数据追加数据后的长度问题
首先默认现在芯片都是小端字节排序的,因为大端字节排序的基本都已经绝种。

然后默认你 205 是无符号整数,不然如果是有符号整数,还会涉及补吗转化更加麻烦,
所以你无符号 205 转为 8 个字节 64 位表示是 “cd 00 00 00 00 00 00 00”这个表示中每一字符代表 4 个位的二进制,

对每字节加 0x33,就是 整体加 “33 33 33 33 33 33 33 33” 也就是十进制 3689348814741910500

所以如果你$data 是 16 进制字符串的话可以这么写
function addData33($data)
{
$int = null;
eval("\$int = 0x". $data.";");
return 3689348814741910500+$int;
}
2020-11-27 15:48:55 +08:00
回复了 tyzrj766 创建的主题 PHP PHP 8.0.0 Released!
@mitu9527
额,本质上不都一样吗,

当然如果说 python 的 gevent 这种与多进程用起来像的协程(提供了 fork/join ),
那么 php7 确实还没有。

而 swoole 的协程是抄了 golang 的 channel,又是另一种协程了。
2020-11-27 15:32:30 +08:00
回复了 dukefightlife 创建的主题 程序员 现在的 app 开发好难
@heyhumor 偏个题

“存在即合理” 原文是 “all existence has its reason”

“has reason” !== “合理”
2020-11-27 15:16:18 +08:00
回复了 zjsxwc 创建的主题 程序员 php7 怎么比 Java 还快?
2020-11-27 14:53:16 +08:00
回复了 tyzrj766 创建的主题 PHP PHP 8.0.0 Released!
@pein #60
php7 开始不就早已支持协程 yield 生成器了吗
2020-11-27 14:38:36 +08:00
回复了 zjsxwc 创建的主题 程序员 php7 怎么比 Java 还快?
2020-11-27 14:27:27 +08:00
回复了 zjsxwc 创建的主题 程序员 php7 怎么比 Java 还快?
由于 javascript nodejs 不能用 int64 所以没有意义,我就不写了


在 int64 的情况下,求第 300000 个质数耗时

python2.7 65.9 秒
python3.8 62.4 秒
ruby2.7 28.3 秒
php7.2 22 秒
php7.4 20 秒
php8.0 19 秒

golang 10 秒
c++ 9.4 秒
纯 c 9.2 秒
java 8.8 秒
2020-11-27 13:47:34 +08:00
回复了 ericgui 创建的主题 程序员 迫于穷,是用 IDEA 社区版,还是 vscode ?
我选择 idea 付费版
2020-11-27 11:36:18 +08:00
回复了 zjsxwc 创建的主题 程序员 php7 怎么比 Java 还快?
今天 php8.0.0 发布,我在同一台电脑里测试同样的代码,变成 19 秒了
2020-11-27 10:56:28 +08:00
回复了 tyzrj766 创建的主题 PHP PHP 8.0.0 Released!
谁有 8.0 jit 性能提升数据 发出来看看
2020-11-26 17:22:30 +08:00
回复了 muraku 创建的主题 程序员 部门内部的两个系统居然是爬网页传信息
不用改 redmine 代码呢
2020-11-26 16:54:08 +08:00
回复了 Dragonphy 创建的主题 问与答 IDEA 编辑器如何显示彩色 emoji 🚀,只能显示黑白的
1 ... 78  79  80  81  82  83  84  85  86  87 ... 219  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1162 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 40ms · UTC 22:51 · PVG 06:51 · LAX 14:51 · JFK 17:51
Developed with CodeLauncher
♥ Do have faith in what you're doing.