我想生成一个线程并在该线程中运行代码.Scala有哪些选项?
示例用法如下:
Thread.currentThread setName "MyThread"
val myThreadExecutor = ???
val threadNamePromise = Promise[String]
future {
myThreadExecutor run {
val threadName = "MySpecialThread"
Thread.currentThread setName threadName
threadNamePromise success threadName
}
}
Await.result(threadNamePromise.future, Duration.Inf)
future {
myThreadExecutor run {
println(Thread.currentThread.getName) // MySpecialThread
}
}
future {
myThreadExecutor run {
println(Thread.currentThread.getName) // MySpecialThread
}
}
println(Thread.currentThread.getName) // MyThread
Run Code Online (Sandbox Code Playgroud)
我可以使用内置Scala库中的任何内容吗?
我更新了代码段以更好地反映意图
据我所知,集合库中没有共享特征来定义map方法(很可能是因为有不同的签名map).
我有一个可观察的值(想想一个ui系统中的属性),它有一个change事件.可以使用map方法映射可观察值.
但是,当我们使用已经有map方法的类型时,我们应该能够使用内置方法map.
所以代替:
prop map { x =>
x map { actualX =>
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
我想这样使用它:
prop map { actualX =>
//do something
}
Run Code Online (Sandbox Code Playgroud)
我有一个简化的测试用例.首先是我使用的不同部分:
// leaving out the observable part
trait ObservableValue[T] {
def value: T
}
trait LowerPriorityImplicits {
// default implementation that adds a regular map method
implicit class RichObservableValue1[A](o: ObservableValue[A]) {
def map[B](f: A => B): ObservableValue[B] = new ObservableValue[B] {
def value …Run Code Online (Sandbox Code Playgroud) 我整个下午一直试图让我的头脑无所事事,Play 2.1.1彻底改变了Json如何读写作品.
基本上我有一个包装器对象,看起来像:
case class CombinedUser(user: SocialUser, userdetails: UserDetails)
Run Code Online (Sandbox Code Playgroud)
你可以看到它包含2个我想要序列化和反序列化为json的类.
但我不明白如何使用新设计获取和设置子类中的字段.
例如
implicit val combinedUser2Reads = (
(__ \ "email").read[String] and
(__ \ "providerid").read[String] and
(__ \ "firstname").read[String] and
(__ \ "lastname").read[String] and
(__ \ "fullname").read[String] and
(__ \ "avatarurl").read[String] and
(__ \ "address1").read[String] and
(__ \ "address2").read[String] and
(__ \ "address3").read[String] and
(__ \ "city").read[String] and
(__ \ "country").read[String] and
(__ \ "phone").read[String] and
(__ \ "publickey").as[String]
)(CombinedUser2.apply _)
Run Code Online (Sandbox Code Playgroud)
我想要一个包含大多数子类字段的json blob,所有字符串.
因为它使用了apply东西,所以我看不出如何在映射之前创建子类.
非常感谢任何帮助或指导.
谢谢
汤姆
我正在使用以下代码测试呼叫:
"status OK" in {
status(doFakeRequest) === OK
}
Run Code Online (Sandbox Code Playgroud)
调用status给出以下编译错误:
could not find implicit value for parameter timeout: akka.util.Timeout
这个例子很简单.
我有一组像这样的类:
case class KeyMapping[KeyType](k:KeyType)
class WrappedMapping[KeyType](m:T forSome {type T <: KeyMapping[KeyType]}) {
val k:KeyType = ???
}
Run Code Online (Sandbox Code Playgroud)
在以下代码中,正确推断了类型:
val w = new WrappedMapping(KeyMapping("key"))
//The statement below gives the correct error
//type mismatch;
// found : w.k.type (with underlying type String) required: Nothing
//val test1:Nothing = w.k
Run Code Online (Sandbox Code Playgroud)
我不知道如何正确推断以下类型:
class Mappings[KeyType, L <: HList](mappings:L) {
val k:KeyType = ???
}
val m = new Mappings(KeyMapping("key1") :: KeyMapping("key2") :: HNil)
// should not compile, k should be of type String
val test2:Nothing …Run Code Online (Sandbox Code Playgroud) 我需要测试我的代码是否创建了正确的数据库语句.我知道我可以使用内存数据库运行我的应用程序.它并不完美,但足以满足这个项目的需要.我的SQL包含MySQL特定的东西.
当我运行我的测试时,它打破了包含以下内容的进化:
CREATE TABLE `Beaches` (
`id` INT(10) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(255) NOT NULL,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB;
COLLATE='utf8_general_ci'
Run Code Online (Sandbox Code Playgroud)
如何解决MySQL特定语法的问题?
mysql database unit-testing playframework-2.0 playframework-2.1
我正在编写一个需要特定设置的插件: configUrl
如果我指定我的设置build.conf将如下所示:
MyPlugin.configUrl := "http://..../..."
Run Code Online (Sandbox Code Playgroud)
然后我可以使用命令行来执行此操作:
sbt 'set MyPlugin.configUrl := "http://..../..."' performAction
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法可以让我在构建中没有这个设置?
如果我sbt没有设置启动,我会收到以下错误:
[error] Reference to undefined setting:
[error]
[error] *:config-url from *:application-configuration
Run Code Online (Sandbox Code Playgroud)
我搜索谷歌但无法找到在命令行上提供设置的方法,如下所示:
sbt config-url="http://..../..."
Run Code Online (Sandbox Code Playgroud)