小编use*_*029的帖子

并发可以提高性能吗?

我知道在运行YARV的Ruby中,线程意味着并发而不是并行.我的问题是:只有并发才能提高性能的情况是什么?例如,我可以想象并发性会在同时处理多个IO流时提高性能 - 如果一个任务很慢,这并不意味着堆栈中的所有下一个任务都必须等待该任务完成.我对吗?还有其他这样的情况吗?这个[hopes that YARV will ever remove the GIL]/[overhead of creating threads with the GIL]比例值得在目前开始使用Ruby中的线程吗?

ruby concurrency multithreading

3
推荐指数
1
解决办法
312
查看次数

如何在CSS3/Javascript中创建"突出显示"效果?

我有一段文本,点击后通过更改其背景颜色突出显示.我想为突出显示设置动画,以便背景颜色从左向右逐渐变化,就像有人实际上突出显示文本一样.有关如何使用CSS3和/或Javascript/jQuery实现这一点的任何想法?

javascript jquery css3 jquery-effects

3
推荐指数
1
解决办法
938
查看次数

使用Ruby C API测试符号的相等性

我试图找到一种方法来测试Ruby C API中的符号相等性.考虑以下C函数:

static VALUE test_symbol_equality(VALUE self, VALUE symbol) {
  if (rb_intern("test") == symbol) {
    return Qtrue;
  } else {
    return Qfalse;
  }
}
Run Code Online (Sandbox Code Playgroud)

从Ruby的角度来看,此方法的行为不符合预期:

test_symbol_equality(:test)    # => false
Run Code Online (Sandbox Code Playgroud)

为什么会这样?我如何更改代码以实现预期的行为?

c ruby ruby-c-extension

3
推荐指数
1
解决办法
177
查看次数

在 Mongoid 3.0 中在运行时切换数据库

我有一个在 Unicorn 上运行的 Sinatra 应用程序,它使用 Mongoid 作为其模型。我有几个结构相同但内容不同的 Mongo 数据库,我在每个用户登录时为每个用户选择正确的数据库。我想知道 Mongoid 3.0 是否可以实现。

mongodb mongoid

3
推荐指数
1
解决办法
1013
查看次数

凹陷边缘的凹面船体

我有一个二进制掩码,我想从中提取轮廓.二进制掩码的所有"外部"边缘都是具有非常高概率的"真实边缘".保持这些边缘固定,我的目标是插入"缺失"边缘(示例图像和下面所需的结果).我尝试过使用Delaunay三角测量,没有太大的成功(见下面的代码).但是,我甚至不确定这是最好的方法,因为我会在这个过程中失去一些细节.

Delaunay三角剖分是否合适?如果是这样,下面的代码出了什么问题?有没有更好的算法来解决这类问题?怎么能用Python实现呢?

在此输入图像描述

当前代码(不起作用)

import numpy as np
from scipy.spatial import Delaunay
from descartes import PolygonPatch
from shapely.geometry import MultiLineString
from shapely.ops import cascaded_union, polygonize
from skimage.draw import polygon
from skimage import segmentation, morphology

def triangulate(mask, alpha=1000):

  contours = measure.find_contours(mask, 0.8)

  points = []

  for n, contour in enumerate(contours):

    for m in xrange(0, len(contour[:, 0])):
      y = contour[:, 0][m]
      x = contour[:, 1][m]
      points.append([y, x])

  points = np.asarray(points)

  tri = Delaunay(points)
  edges = set()
  edge_points = []

  def add_edge(i, j):
    if …
Run Code Online (Sandbox Code Playgroud)

python interpolation delaunay image-processing triangulation

3
推荐指数
1
解决办法
1865
查看次数

如何在引发异常时中止Ruby脚本?

在Ruby中,是否有可能引发一个异常,它也会自动中止程序,忽略任何封闭的开始/救援块?

ruby exception-handling exception rescue

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

在Javascript对象上调用jQuery函数的习惯方法?

给定一个Javascript DOM对象,在它上面调用jQuery函数最常用的方法是什么?目前,我正在使用:

$('#' + object.id).someFunction()

但是,这感觉不太对劲.有没有更好的方法?

javascript jquery

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

如何检查对象是否不是Ruby中的Core类型?

在Ruby中,确定对象是属于用户定义的,gem定义的还是标准库定义的类的最佳方法是什么,而不是Core库中的类(例如Object,String,Hash,Numeric)等)?

ruby types

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

如何使从Ruby C扩展中调用的printf静音?

  • 我正在运行一个依赖于C扩展(而不是对系统的调用)的Ruby gem。
  • C代码对printf进行了多次调用。
  • 我想使这些呼叫的输出静音。
  • 更改Ruby的STDOUT(示例)或STDERR不会阻止文本的输出。

是否可以在不修改C代码的情况下执行此操作?如果是这样,怎么办?

c ruby printf stdout

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

如何在Ruby中的块内动态包装代码?

假设代码的某一部分需要在不同的块/上下文中运行,具体取决于配置选项.例如,

if silence
  silence_stdout do
    # do something
  end
else
  # do the same thing
end
Run Code Online (Sandbox Code Playgroud)

有没有办法写这个而不重复# do something代码?

ruby block dynamic

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

为什么Ruby和JavaScript按位运算符会使用相同的操作数产生不同的结果?

为什么Ruby和JavaScript按位运算符会使用相同的操作数产生不同的结果?

例如:

256 >> -4 # => 4096 (Ruby)
256 >> -4 # => 0 (Javascript)
Run Code Online (Sandbox Code Playgroud)

任何提示/指示表示赞赏.

javascript ruby bit-manipulation

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