actorKotlin 协程库中有一个概念:
fun CoroutineScope.counterActor() = actor<CounterMsg> {
var counter = 0 // actor state
for (msg in channel) { // iterate over incoming messages
when (msg) {
is IncCounter -> counter++
is GetCounter -> msg.response.complete(counter)
}
}
}
Run Code Online (Sandbox Code Playgroud)
文档说
一个简单的actor可以写成一个函数,但是一个具有复杂状态的actor更适合一个类。
什么是在 Kotlin 中定义为类的演员的好例子?
我首先在我的mvc3项目中使用EF 4.2代码.
miniprofiler工作得很好(sql + mvc),但是我遇到了异步任务的问题.
我用这种方式表演(这个方法好吗?我对此感到有点不安new DatabaseContext())
public static void PerformAsycAction(this User user, Action<User> action)
{
ThreadPool.QueueUserWorkItem(_ =>
{
var context = new DatabaseContext();
MiniProfilerEF.Initialize();
var consistantUser = context.Set<User>().Get(user.Id);
action(consistantUser);
context.SaveChanges();
});
}
Run Code Online (Sandbox Code Playgroud)
我在Application_Start中有适当的行:
protected void Application_Start()
{
MiniProfilerEF.Initialize();
...
}
Run Code Online (Sandbox Code Playgroud)
在db的第一个操作期间抛出了一个excpetion,action(consistantUser);
这里是跟踪:
在MvcMiniProfiler.MiniProfiler.AddSqlTiming(SqlTiming stats)中的C:\ Users\sam\Desktop\mvc-mini-profiler\MvcMiniProfiler\MiniProfiler.cs:MvcMiniProfiler.SqlTiming..ctor中的第274行(DbCommand命令,ExecuteType类型,MiniProfiler profiler) )在C:\ Users\sam\Desktop\mvc-mini-profiler\MvcMiniProfiler\SqlTiming.cs:第137行,位于C:\ Users\sam\Desktop\mvc-中的MvcMiniProfiler.SqlProfiler.ExecuteStartImpl(DbCommand命令,ExecuteType类型) mini-profiler\MvcMiniProfiler\SqlProfiler.cs:第39行,位于C:\ Users\sam\Desktop\mvc-mini-profiler\MvcMiniProfiler\SqlProfiler.cs中的MvcMiniProfiler.SqlProfilerExtensions.ExecuteStart(SqlProfiler sqlProfiler,DbCommand命令,ExecuteType类型):位于MvcMiniProfiler的C:\ Users\sam\Desktop\mvc-mini-profiler\MvcMiniProfiler\MiniProfiler.IDbProfiler.cs:第14行的MvcMiniProfiler.MiniProfiler.MvcMiniProfiler.Data.IDbProfiler.ExecuteStart(DbCommand profiledDbCommand,ExecuteType executeType)第93行. Data.ProfiledDbCommand.ExecuteDbDataReader(CommandBehavior behavior)in C:\ Users\sam\Desktop\mvc-mini-profiler\MvcMiniProfiler\Data\ProfiledDbCommand.cs:System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands上System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)的第158行( EntityCommand entityCommand,CommandBehavior行为)
我究竟做错了什么?任何帮助将不胜感激.
编辑:我尝试再次初始化MiniProfiler(MiniProfilerEF.Initialize();),在执行backgroung任务的线程中(在启动DatabaseContext之前),现在还有另一个例外:
无法将"MvcMiniProfiler.Data.EFProfiledDbConnection"类型的对象强制转换为"System.Data.SqlClient.SqlConnection"类型
实际上,在后台线程中对查询进行概要分析并不是必需的,但它会导致整个线程崩溃,因此应用程序无法正常工作,我不得不讨论整个分析器.有没有办法为它,后台,线程禁用它以防止它崩溃?
我有一个Rails应用程序和一个Sinatra应用程序:
routes.rb中:
mount MySinatraApp => "/streaming"
Run Code Online (Sandbox Code Playgroud)
sinatra app:
class MySinatraApp< Sinatra::Base
...
before do
puts 'hello from sinatra!'
end
...
end
Run Code Online (Sandbox Code Playgroud)
我希望过滤器只能在开始时的请求上运行/streaming...,但是,令我惊讶的是,过滤器运行在对整个Rails应用程序的每个请求上.这样的行为怎么办?之后我可以添加一个正则表达式过滤器before,但我认为这不是一个好的风格.
我使用implicit val reads映射 Json 像:
{
"id": 1
"friends": [
{
"id": 1,
"since": ...
},
{
"id": 2,
"since": ...
},
{
"id": 3,
"since": ...
}
]
}
Run Code Online (Sandbox Code Playgroud)
到案例类
case class Response(id: Long, friend_ids: Seq[Long])
Run Code Online (Sandbox Code Playgroud)
我只能让它与反映 JSONfriends结构的中间类一起工作。但我从来没有在我的应用程序中使用它。有没有办法编写一个Reads[Response]对象,以便我的 Response 类可以直接映射到给定的 JSON?
json scala playframework playframework-2.0 playframework-json
我们正在构建一个高吞吐量,低延迟的流处理应用程序。我们将Apache Kafka用作消息传递平台和数据库。
似乎Kafka Streams和Alpakka Kafka框架有很多共同之处,但是Kafka Streams似乎比Kafka更“原生”,而Alpakka允许我们使用Akka框架的功能。
这两个框架之间的主要区别是什么?
我有一个Sinatra网络应用程序.
这样的网址:
http://test.com:9393/signup?username=&email=liubei@test.com&nickname=&gender=&birthday=&password=123456&password_confirmation=123456
如何删除url中的params.Make浏览器中的url是:http://test.com:9393/signup
也可以得到参数