问题列表 - 第47035页

java线程和主线程

什么是使主线程等到所有线程完成的最佳方法?

for(int i=0;i<n;i++){
   Thread t=new Thread();
   t.start();

}

//wait for all threads to finish

java multithreading

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

org.dbunit.dataset.NoSuchTableException:未在架构'null'中找到表'xxx'

我知道dbunit已经在这里进行了讨论.我已经阅读了大部分内容,但我似乎无法找到解决问题的方法.

我已经设置了hibernate和spring.我正在做TDD所以我必须在编写代码之前连接一个正确的DAO测试框架.Dbunit浮现在脑海中,我必须设置它.这是ma testdataset.xml

    <?xml version='1.0' encoding='UTF-8'?>
    <dataset>
        <table name="status">
            <column>statusId</column>
            <column>status</column>
            <row>
                <value>0</value>
                <value>Available</value>
            </row>
        </table>
        <table name="user">
            <column>userId</column>
            <column>firstName</column>
            <column>lastName</column>
            <column>username</column>
            <column>password</column>
            <column>email</column>
            <row>
                <value>0</value>
                <value>system</value>
                <value>admin</value>
                <value>admin</value>
                <value>admin</value>
                <value>admin@ccbs.com</value>
            </row>
        </table>
        <table name="reservation">
            <column>reservationId</column>
            <column>userId</column>
            <column>reservationDate</column>
            <column>startDate</column>
            <column>endDate</column>
            <column>statusId</column>
            <row>
                <value>0</value>
                <value>0</value>
                <value>2011-02-20 12:46:00.0</value>
                <value>2011-03-01 12:00:00.0</value>
                <value>2011-04-01 12:00:00.0</value>
                <value>0</value>
            </row>
        </table>
    </dataset>
Run Code Online (Sandbox Code Playgroud)

一切似乎都很好,直到我尝试使用加载数据集的基类连接一些代码.这是我的代码:

@Transactional
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:test-applicationContext.xml" })
@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true)
public class BaseContextSensitiveTest {

    @BeforeClass
public static void setUpDatabase() throws Exception { …
Run Code Online (Sandbox Code Playgroud)

java spring dbunit hibernate

8
推荐指数
3
解决办法
3万
查看次数

jquery.form和跨域请求

我很难尝试使用跨域请求创建jquery.form.我遇到了Firefox和Chrome的问题(甚至还没试过IE).

说明:我的整个站点位于http://www.mysite.com内.但是,我的联系表单位于另一台服务器上,由http://contact.mysite.com引用.我认为将它放在子域上会避开有关跨域请求的问题,但显然它没有.http://contact.mysite.comSinatra实施.

我的javascript设置没什么特别的.表单的操作指向http://contact.mysite.com,方法是POST:

<form id="contact" action="http://contact.mysite.com/" method="post">
Run Code Online (Sandbox Code Playgroud)

jquery.form配置了一个ajaxForm调用:

$(document).ready(function() {

  $('#contact').ajaxForm({
    success: function() { $('#success').fadeIn("slow"); },
    error: function() {  $('#error').fadeIn("slow"); }
  });

});
Run Code Online (Sandbox Code Playgroud)

我遇到的第一个问题是使用Firefox 3.5 - 显然它会发送一个OPTIONS请求,期望来自服务器的特定答案.我用这个问题来配置我的Sinatra应用程序,因此它做了预期的事情(似乎更新版本的sinatra包含一个选项动词):

require 'rubygems'
require 'sinatra'
require 'pony'

# patch sinatra so it handles options requests - see https://stackoverflow.com/questions/4351904/sinatra-options-http-verb
configure do
  class << Sinatra::Base
    def options(path, opts={}, &block)
      route 'OPTIONS', path, opts, &block
    end
  end
  Sinatra::Delegator.delegate :options
end

# …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery jquery-plugins cross-domain

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

什么是monad-transformer与monad不同?

这个问题说明了一切,真的.我知道(Scala)Monad看起来像这样:

trait Monad[M[_]] {
  def pure[A](a : A) : M[A]
  def bind[A, B](ma : M[A], f : A => M[B]) : M[B]
}
Run Code Online (Sandbox Code Playgroud)

Monad Transformer是什么样的?它们用于什么?


编辑.考虑以下REPL会话:如果monad变换器以某种方式装饰具有读取器功能的monad(反之亦然)

比方说,我只是想用replicateMScalaz ;

scala> import scalaz._; import Scalaz._
import scalaz._
import Scalaz._

scala> some(4).replicateM[List](2)
res20: Option[List[Int]] = Some(List(4, 4))
Run Code Online (Sandbox Code Playgroud)

现在让我们说,而不是有一个Option[Int],我需要读取一个IntFile:

scala> val f = (_ : java.io.File) => some(1)
f: (java.io.File) => Option[Int] = <function1>
Run Code Online (Sandbox Code Playgroud)

所以,我可以对待这个读者,好像它是一个Monad?

scala> ReaderT(f).replicateM[List](2)
<console>:16: …
Run Code Online (Sandbox Code Playgroud)

monads haskell functional-programming scala scalaz

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

FileHelpers库可以编写包含可空字段的类以及读取它们吗?

我正在使用FileHelpers库的2.0版,它被记录为能够处理.NET 2.0 Nullable类型.

我正在使用文档中示例中给出的代码:

[DelimitedRecord("|")]   
public class Orders   
{   
    public int OrderID;   

    public DateTime? OrderDate;   

    [FieldConverter(ConverterKind.Date, "ddMMyyyy")]     
    public DateTime? RequiredDate;   

    public int? ShipVia;   
}   
Run Code Online (Sandbox Code Playgroud)

使用FileHelperEngine,我可以成功读入一个没有OrderDate,RequiredDate或ShipVia字段值的文件.该文件看起来像:

1 |||

但是,我无法将生成的Orders []写出到文件中 - 库会抛出NullReferenceException,堆栈跟踪如下:

位于FileHelpers.Field上的FileHelpers.FieldBase.BaseFieldString(Object fieldValue)中的FileHelpers.FieldBase.AssignToString(StringBuilder sb,Object fieldValue)位于FileHelpers的FileHelpers.ConvertHelpers.CultureConverter.FieldToString(Object from) .RecordInfo.RecordToString(对象记录)在FileHelpers.FileHelperEngine 1.WriteStream(TextWriter writer, IEnumerable1记录,Int32 maxRecords)在FileHelpers.FileHelperEngine 1.WriteFile(String fileName, IEnumerable1记录,Int32 maxRecords)在FileHelpers.FileHelperEngine 1.WriteFile(String fileName, IEnumerable1记录)在TestingFileHelpers.Program.Main(String [] args)在C:位于System.AppDomain.ExecuteAssembly(String assemblyFile,Evidence assemblySecurity,String [] args)的System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly,String [] args)中的\ dev\src\TestingFileHelpers\TestingFileHelpers\Program.cs:第19行System.Threading.ExecutionContext.Run上的System.Threading.ThreadHelper.ThreadStart_Context(Object state)中的.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()(Executi)System.Threading.ThreadHelper.ThreadStart()上的System.Threading.ExecutionContext.Run(ExecutionContext executionContext,ContextCallback回调,对象状态)中的onContext executionContext,ContextCallback回调,Object state,Boolean ignoreSyncCtx)

我敢肯定我必须在这里遗漏一些东西,但我无法弄清楚它是什么.任何帮助非常感谢.

c# filehelpers

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

MATLAB:从函数内加载

我有一个MATLAB函数需要访问一些largeFile.mat的数据.如果(为了避免污染全局命名空间)我将load命令放在函数中,每次调用函数时MATLAB都会重新加载largeFile,还是它足够聪明以在调用之间缓存largeFile?例如

function hello()
    load largeFile.mat;
    display('hi');
end

for i=1:1000
    hello();
end
Run Code Online (Sandbox Code Playgroud)

我应该将load命令保留在函数中,还是应该执行一次并将largeFile的数据作为arg传递?谢谢!

file-io matlab caching

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

我可以在接口上重载==运算符吗?

我有这样的界面:

public interface IFoo
{
  int A {get;}
  int B {get;}
}
Run Code Online (Sandbox Code Playgroud)

我有多个实现IFoo的类.
我想检查相等性,而不是基于ReferenceEquality,但是如果A和B都相同,那么两个IFoos应该被认为是相同的(实际上我正在检查通过WCF发送的Key-Value对的集合,这就是为什么我可以没有ReferenceEquality).
如果我有:

IFoo first = new FooBar1() { A = 1, B = 1};
IFoo second = new FooBar2() { A = 1, B = 1};
if (first == second) {
 //this should return true
}
Run Code Online (Sandbox Code Playgroud)

目前IFooIEquatable<IFoo>,所以FooBar1和FooBar2重写Equals(IFoo other),但这不是在==上调用的内容.我正在搜索我的代码以替换a==ba.Equals(b)任何地方,但这并不好.

我能做什么?

.net c# equality interface iequatable

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

使用EF4 CTP5的存储库模式

我正在尝试用ef4 ctp5实现存储库模式,我想出了一些东西,但我不是ef的专家,所以我想知道我做的是不是很好.

这是我的数据库上下文

public class Db : DbContext
{
    public DbSet<User> Users { get; set; }
    public DbSet<Role> Roles { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

和存储库:(简化)

public class Repo<T> : IRepo<T> where T : Entity, new()
{
        private readonly DbContext context;

        public Repo()
        {
            context = new Db();
        }

        public IEnumerable<T> GetAll()
        {
            return context.Set<T>().AsEnumerable();
        }

        public long Insert(T o)
        {
            context.Set<T>().Add(o);
            context.SaveChanges();
            return o.Id;
        }
}
Run Code Online (Sandbox Code Playgroud)

entity-framework repository entity-framework-4

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

AsParallel() - 在asp.net中并行使用2个以上的线程

我有一个方法,我用不同的参数调用8次.我用

 AvailableYears.AsParallel()
             .Select<Int32,DateUsedByThread>(x => GetDataForYearWorker(x,CIF))
             .ToList();
Run Code Online (Sandbox Code Playgroud)

GetDataForYearWorker同步从Web服务获取响应.它在我的asp.net应用程序上使用非常少的计算能力,但是每个webservice响应都需要3-5秒.因为对web服务的调用是彼此独立的,所以我想同时进行所有操作.但看起来只有2个线程可以同时运行.为什么这样,我怎么能有8个线程同时工作?

c# asp.net parallel-processing multithreading

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

为什么在Python-2.x中打破了super()?

经常声明在Python 2 中super应该避免使用.我super在Python 2中使用它发现它永远不会按照我的预期行事,除非我提供所有参数,例如:

super(ThisClass, self).some_func(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)

在我看来,这违背了使用的目的super(),它既不简洁,也不比它更好TheBaseClass.some_func(self, *args, **kwargs).在大多数情况下,方法解析顺序是一个遥远的童话故事.

python multiple-inheritance python-2.x super python-3.x

41
推荐指数
3
解决办法
5万
查看次数