小编Nat*_*eyn的帖子

从Scala反射中键入

假设我有:

trait A

class B extends A
Run Code Online (Sandbox Code Playgroud)

编译成类文件.后来我加载了反射:

val a = Class forName "A"
val b = Class forName "B"
Run Code Online (Sandbox Code Playgroud)

谁能告诉我如何检查是否b是子类型a

reflection scala typechecking

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

如何检查表达式树中参数的类型(类似于'is'关键字)

如何检查表达式树中参数的类型(bool如果类型正确,则获得与 a 等效的表达式树)?如果是普通代码,我会这样做:

if(myObj is int)
Run Code Online (Sandbox Code Playgroud)

我看到有一种Expression.Convert方法,但这会转换对象,而不仅仅是检查其类型。

编辑:我找到了答案,你使用Expression.TypeIs

c# expression-trees typechecking

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

使用ExecutorService生成的结果.哪一堂课?

我希望我能写下类/接口名称,但我没有......

在查看JDK javadoc时,我看到了一个类/接口的引用,目的是收集和使用ExecutorService(完成的Futures<T>s)产生的结果,可能是系统中的其他地方.当时我记下了它,因为它非常适合我需要的东西,但我似乎无法从舌尖上得到这个类的名字.

任何人都知道我指的是什么?

java multithreading future executorservice

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

如何使用boost线程期货的向量?

如何使用线程期货向量来获取一组线程的返回值?这有用吗?如果没有,我该如何适应它?

int calculate_the_answer_to_life_the_universe_and_everything()
{
    return 42;
}

vector<packaged_task<int> > tasks;
vector<unique_future<int> > futures;
for (int i=0; i < 4; ++i)
{
    tasks.push_back(packaged_task<int>(calculate_the_answer_to_life_the_universe_and_everything));
    futures.push_back(tasks.back().get_future());
    thread task(tasks.back());
}

boost::wait_for_all(futures.begin(), futures.end());
Run Code Online (Sandbox Code Playgroud)

multithreading boost future

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

有没有办法检查param是否包含类或类实例?

我希望包装器my_function能够接收类或类实例,而不是编写两个不同的函数:

>>> from module import MyClass

>>> my_function(MyClass)

True

>>> cls_inst = MyClass()

>>> my_function(cls_inst)

True
Run Code Online (Sandbox Code Playgroud)

问题是我事先不知道我将接收哪种类或类实例.所以我不能,例如,使用像isinstance这样的函数...

如何以通用方式键入检查param是否包含类或类实例?

任何的想法?

python typechecking

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

c ++ 0x中的期货问题

我写了一个小程序,以了解c ++ 0x中的期货是如何工作的.在运行代码时,我得到一个错误,如"错误:'printEn'未在此范围内声明".我无法理解问题是什么.请指出我在这里做错了什么,如果可能的话,写相同的正确代码..

#include <future>
#include <iostream>

using namespace std;


int printFn()
{
    for(int i = 0; i < 100; i++) 
    {

        cout << "thread " <<  i << endl;
    }

    return 1;
}



int main()
{

    future<int> the_answer2=async(printEn);
    future<int> the_answer1=async(printEn);


   return 0;
}
Run Code Online (Sandbox Code Playgroud)

编辑:

在运行程序时对printFn进行更改后,我收到错误消息"找不到版本`GLIBCXX_3.4.14'(./a.out要求)".这表明了什么?

future c++11

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

NHibernate父母,与期货的儿童集合

我有这个设置:父,有一个儿童的集合.

class Parent {
    IList<Child> Childs { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

HQL:

("来自父母").期货();

("来自孩子").未来();

foreach(Parent p in result) {
    foreach(Child c in p.Childs) {
    }
}
Run Code Online (Sandbox Code Playgroud)

这给出了经典的N + 1问题.两个SQL语句在1次往返中发送到服务器,因此所有数据都存在于一级缓存中,那么为什么NH仍然存在每个子进程的SQL.

版本3.1.0.400

nhibernate future

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

数据库的未来在哪里?

我现在对我的MySQL数据库感到有点沮丧,所以我一直在思考我希望在未来的数据库中看到的所有内容.但是我觉得听到其他人的想法会很有趣 - 我不是一个专业人士.

sql

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