小编Phi*_*lak的帖子

续集选择了太多列

看起来Sequel的默认选择是"select*",当你添加一些连接时会引起各种问题.至少你最终会在对象中出现错误的ID(因为那时会返回多个"id"列).做点什么

.select("people.*")
Run Code Online (Sandbox Code Playgroud)

似乎工作,但它将传入的字符串视为一个列并引用它.到目前为止,我不得不回到裸SQL来解决这个问题,但我知道必须有更好的方法.

ruby sequel

6
推荐指数
1
解决办法
1654
查看次数

为什么EventMachine比Node慢得多?

在我的具体情况下,至少.不试图在这里做一般性陈述.

我在Node.js中编写了这个Web爬虫.我喜欢使用Ruby,所以我在EventMachine中重写了它.由于原版是在CoffeeScript中,它实际上非常容易,并且代码非常相似,除了在EventMachine中我实际上可以捕获并从异常中恢复(因为我使用的是光纤).

问题是在Node.js代码上运行不到20秒的测试在EventMachine上占用的时间超过5分钟.当我观察连接计数时,它几乎看起来甚至没有并行运行(它们排队成数百个,然后非常缓慢地向下运行),尽管日志记录显示代码点并行命中的.

我意识到没有代码就无法确切地知道到底发生了什么,但我只是想知道是否存在某种潜在的差异,我应该放弃,或者他们是否应该能够以更快的速度运行(a小的减速是好的)我应该继续试图找出问题所在.

我做了以下,但它似乎没有任何影响:

puts "Running with ulimit: " + EM.set_descriptor_table_size(60000).to_s
EM.set_effective_user('nobody')
EM.kqueue
Run Code Online (Sandbox Code Playgroud)

哦,我非常确定我在EventMachine中没有任何阻塞调用.我已经梳理了大约10次每一行,寻找任何可能阻塞的东西.我的所有网络调用都是EM :: HttpRequest.

javascript ruby eventmachine node.js

6
推荐指数
1
解决办法
1719
查看次数

在iPhone应用程序中显示加载屏幕的最佳方式?

我正在构建一个基本上是一个Web应用程序.每个数据都必须从Web API中获取.因此,我展示的每个UITableView都需要花费一些时间来填充数据,而我正在努力寻找向用户显示加载屏幕的好方法.

现在我正在弹出一个动作表,但这看起来有点不对劲.理想情况下,我会在桌面上弹出一个空白视图,上面有"正在加载...",然后在数据进入时将其淡出,但我想不出在我的8个地方做到这一点的方法没有大量代码重复的应用程序.

iphone cocoa-touch

4
推荐指数
2
解决办法
5371
查看次数

删除Javascript blob?

我有一点时间摆脱这些愚蠢的事情.我有几个Chrome应用程序处理大量媒体文件; 其中一个,我能够使用一堆"删除"和一个window.URL.revokeObjectURL最终阻止他们积累chrome://blob-internals/,但另一个,似乎没有任何帮助.我错过了什么吗?我完全知道我什么时候该死的,但我似乎无能为力.

具体来说,我在块中使用File对象,如下所示:

ref.file(function(f) {
    // Do some stuff...
    // and now I'm done!
    delete f
});
Run Code Online (Sandbox Code Playgroud)

这是我的应用程序的实际来源:

https://github.com/pkulak/photo-importer

这是我认为我实际上解决了问题的那个,但是谁真的知道:

https://github.com/pkulak/drive-slideshow

javascript google-chrome-app

4
推荐指数
1
解决办法
8896
查看次数

将UITableView置于编辑模式而不移动TextLabel?

我有一个可排序的UITableView,但就是这样.现在,我将所有单元格设置为UITableViewCellEditingStyleNone,但这仍然将单元格的TextLabel向右移动了40个像素.反正是否有编辑模式和右侧的排序图标,而没有移动TextLabel?

iphone cocoa-touch

2
推荐指数
1
解决办法
988
查看次数

如何在 Ktor 中使用自定义配置?

我正在挖掘内置的配置支持,并想使用它(而不是仅仅在 Ktor 的旁边滚动我自己的),但我很难弄清楚如何以一种干净的方式做到这一点。我有这个,它正在工作,但它真的很难看,我觉得必须有更好的方法:

val myBatisConfig = MyBatisConfig(
        environment.config.property("mybatis.url").getString(),
        environment.config.property("mybatis.driver").getString(),
        environment.config.property("mybatis.poolSize").getString().toInt())

installKoin(listOf(mybatisModule(myBatisConfig), appModule), logger = SLF4JLogger())
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

ktor koin

1
推荐指数
2
解决办法
1958
查看次数