V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  xiangyuecn  ›  全部回复第 108 页 / 共 115 页
回复总数  2281
1 ... 100  101  102  103  104  105  106  107  108  109 ... 115  
2018-09-19 19:51:46 +08:00
回复了 fundebug 创建的主题 JavaScript JS 不写分号会出 BUG 的。。。
加分号不加分号都是对的,只要运行过程和最终结果符合预期就是 ok 的,管你是不加分号还是漏了分号。

{我是要求加分号}; 不加分号的代码看起来就像光着屁股,没错,看 java 就像是光着屁股的。

写花里胡哨的格式都可以,反正最终压缩成一坨代码,嘿嘿
2018-09-19 19:29:54 +08:00
回复了 bethebetter 创建的主题 Android 小米在系统设置中插入广告了
显示广告就算了,不能接受点一下自动下载,自动安装,网速又快,取消都取消不赢。

开启应用锁,把系统更新、搜索、下载管理、应用商店 统统锁起来。广告不作恶。

另外红米应用管理里面没有出现此类广告,"100%"是被阉割了
2018-09-19 18:08:24 +08:00
回复了 alwayshere 创建的主题 程序员 有没有一种方法, js 阻止用户截图?
参考 #197 的 demo 挺屌的 不过稍微眼花,基本怎么消耗 cpu
2018-09-19 17:07:19 +08:00
回复了 xiangyuecn 创建的主题 程序员 ios 12 支不支持录音了?
@orangeade @littleboyzt 现在用的 MIUI 自带电话录音,有个录音有备无患,关键电话关键事项不怕遗漏
2018-09-19 17:04:06 +08:00
回复了 xiangyuecn 创建的主题 程序员 ios 12 支不支持录音了?
@whileFalse #15 没能一样看出这两张图分别代表什么浏览器,不过看到 getUserMedia 都是 false,这两个浏览器上《凉凉》


@qinxi 看楼上有些可以,好奇怪的系统特性,ios 版 IE
2018-09-19 13:11:23 +08:00
回复了 xiangyuecn 创建的主题 程序员 ios 12 支不支持录音了?
@whileFalse 能不能截下 Chrome 和 Firefox 的截图看看,感觉 Chrome 这个全能选手不应该不支持啊
2018-09-19 11:59:34 +08:00
回复了 xiangyuecn 创建的主题 程序员 ios 12 支不支持录音了?
@wangmn #7 试了一下蛮不错。不过反正轮子已经重复造了一遍,只录音用自己的代码小些,uglify+gzip 后 56k 大小


@xell 嗯嗯,看到 ios12 支持 getUserMedia 差不多就是支持了
2018-09-19 10:39:40 +08:00
回复了 xiangyuecn 创建的主题 程序员 ios 12 支不支持录音了?
@liuhaotian 能不能再测一下截下图,刚刚调整了对 webkitAudioContext 的支持,(测试页面如果没有显示 Recorder Last Modified 2018-09-19 10:27,可能需要刷新几下,有缓存)

http://wx3.sinaimg.cn/large/a32300cdgy1fvenerc71hj20b10433yb.jpg
2018-09-19 10:12:23 +08:00
回复了 xiangyuecn 创建的主题 程序员 ios 12 支不支持录音了?
@gchxp 能不能截个图瞄一下,我没有苹果手机测试
2018-09-19 10:09:22 +08:00
回复了 xiangyuecn 创建的主题 程序员 ios 12 支不支持录音了?
@Servo 不用慌,这个需求不是根据手机壳换主题
2018-09-17 18:01:57 +08:00
回复了 nilrust 创建的主题 程序员 2000 年前国内有哪些知名的开源项目?
2000 年前是西汉平帝元始元年,过些年就是三国了,前几天还看着老版的三国演义,哈哈

公元 2000 年有 异常 著名 的 之一 国内也有份 的 Y2K,之前如果有开源项目,估计也会带点这个高级货。

还在用 int 类型存储秒单位时间的,怕不怕 new Date(Math.pow(2,4*8-1)*1000-1).toLocaleString(),精度这么差为啥不用毫秒来计时,一次编写到处运行,简单不坑
2018-09-16 13:01:29 +08:00
回复了 dopdopdop 创建的主题 职场话题 感觉喜欢上了女同事怎么办?
各位大佬牛皮的断句,反正是要上的,参考#91 深情的图文并茂。。哈。。。
2018-09-15 20:48:36 +08:00
回复了 Tumblr 创建的主题 全球工单系统 @Livid 来领工单喽~~
不能直视用 table 和 flex 来布局这种,不是空格换成 margin 就解决了吗(滑稽
分母+1
永远的分母
2018-09-13 12:05:10 +08:00
回复了 abcbuzhiming 创建的主题 程序员 生成内容型的下载接口如何给前端友好提示?
@abcbuzhiming 那就用 ajax 啊,把数据先 load 下来,然后给一个按钮,让用户点击保存。blob+a 标签 download

或者下载完得到 blob 对象后,自动弹保存示例代码:

var url=URL.createObjectURL(
new Blob(["abcd"],{"type":"text/plain"})
);
var downA=document.createElement("A");
downA.innerHTML="不让点";
downA.href=url;
downA.download="data.txt";
document.body.appendChild(downA);
downA.click();
2018-09-13 10:28:52 +08:00
回复了 d754903977 创建的主题 全球工单系统 百度的老哥,换个手机号真的要这么麻烦嘛……
歪楼吐槽一下各种套路套餐:移动联通电信自家业务真是无法理喻,按目前的眼光。

有了 5 元米粉卡,19 元大王卡,一天流量 1 块钱撑死。10010 营销客服还老打电话卖 10G 流量,要改 4、50 的套餐,不是吃屎了么。

还是电信米粉卡好点,大王卡相对就渣了不少。

3 巨头自家业务还卖个锤子,套餐也不让改便宜的,逼人销号去隔壁家。
2018-09-13 10:20:49 +08:00
回复了 abcbuzhiming 创建的主题 程序员 生成内容型的下载接口如何给前端友好提示?
@westoy iframe 大法+1,普通的表单上传、普通的连接下载,target 到 iframe 中执行,和 xhr 异曲同工
2018-09-13 10:01:15 +08:00
回复了 xiangyuecn 创建的主题 程序员 C#中的废物 WebRequest
@xeaglex 测试了一下调大了最小线程数,新开的线程立马就飚了起来。

刚刚,细细思考一下 ThreadPool 这种延迟开新线程的行为存在的意义,发现一个事实:纯粹是微软某个程序员意淫出来的结果。

[1]

一般常见的池类配置存在两个控制参数:MaxActive 最大活跃数、MaxIdle 最大空闲数;你需要连接立即给你,只要不超过最大连接数,并且池内保留已开启的。

.net ThreadPool:只有 MaxThread 最大活跃数;你需要线程?看你设置了 MinThreads 没有,已开线程数量超过 MinThreads ?不好意思,新血液小水管慢慢流,等着业务超时吧。


[2]

ThreadPool 这个延迟功能初衷本来是好的,可以防止程序因为突然不好的原因( bug 或者其他非预期因素)打开大量线程产生的问题 [非业务需求] 。但如果程序确实需要大量线程来处理,不管你怎么延迟,最终还是会开到满足需要的线程数量 [业务实际需求] ;此时 ThreadPool.SetMinThreads 入场。

但是因为程序功能需要,往往需要调用 ThreadPool.SetMinThreads 调大可快速开启的线程数量,由于 ThreadPool.SetMinThreads 算是一个竞争资源(下面 [3] 解释)。最终的设定会趋向于 ThreadPool.SetMinThreads==ThreadPool.SetMaxThreads,并且趋向于全局只初始化设定一次(如程序启动时)。

最终结果就是 ThreadPool.SetMinThreads 失去存在的意义,ThreadPool 延迟开新线程没有任何价值。


[3]

ThreadPool.SetMinThreads 存在竞争因素,不敢随意调用,最终结果趋向于在程序初始化时设定 ThreadPool.SetMinThreads==ThreadPool.SetMaxThreads。

注意:MinThreads 数量并非会保留的空闲( Idle )线程数量,是要新开线程时如果已开启线程数量没有超过 MinThreads 就会立即开启,否则等着吧。新开的线程超过时间没用会自动关闭,具体保留多少个空闲( Idle )线程,没有设置方法。

默认:SetMinThreads 10
事物 A:事物开始时 SetMinThreads 200 (实际需要 100-300 个线程),事物结束还原成 10
事物 B:事物开始时 SetMinThreads 50 (实际需要 50-80 个线程),事物结束还原成 10

竞争情况:AB 都在运行(无需管谁先开始的),A 需要 30 分钟,B 需要 5 分钟,不管谁先结束,MinThreads 都会变成比另外事物开始时设定值小,都 [有可能] 对另外一个事物产生影响。

解决办法:那就不在事物开始时设定,改成每次从线程池中拿线程时设定 MinThreads,问题解决!

然后演变变成了:

MinThreads=谁大谁说了算;

整个程序 MinThreads≈会最大设定那个值。

整个程序 MinThreads≈MaxThreads。


[结论]

当有相对多点的线程需求时,ThreadPool 这种延迟开新线程的行为没有意义。ThreadPool.SetMinThreads 废物,不如换成 SetMaxIdleThreads。

new Thread(run).Start()没这种问题,但线程启动耗时太长(到无法接受的程度)。ThreadPool.QueueUserWorkItem(run)和 Task.Run(run)共享 ThreadPool。

实现线程池比实现 HttpClient 简单 99 倍,是时候自己实现一个.net 的线程池了(大哭

-----

洋洋洒洒又写作文,测试+码字耗时 1 小时,学习就是这样的 @karllynn #70
1 ... 100  101  102  103  104  105  106  107  108  109 ... 115  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   995 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 39ms · UTC 23:11 · PVG 07:11 · LAX 16:11 · JFK 19:11
Developed with CodeLauncher
♥ Do have faith in what you're doing.