小编Spa*_*key的帖子

OpenCL静态C++文档

我已经用OpenCL进行了几天的实验,我正在使用AMD的SDK,现在我可以并行运行一个简单的内核,并将输入/输出传递给它.
我不得不说,我对它缺乏适当的文档感到非常失望,CUDA似乎比OpenCL更成熟,但我不能使用CUDA,因为我没有nVidia,因为我想要便携式代码.

我已经读过AMD的OpenCL SDK现在支持"静态C++"扩展,它允许你有一些用于编写内核的C++特性,比如继承和将类实例从主机传递到设备.但是我找不到任何关于那个或任何例子的文档.

简而言之,我的问题是:

在哪里可以找到有关使用OpenCL的静态C++扩展的文档?
一个额外的问题是,我在哪里可以找到C++包装器(1.2而不是1.1)
的PROPER文档,这是一个超级额外的(:P)问题,是否存在OpenCL 1.2的完整/成熟C#包装器?到目前为止,我发现OpenCL.NET工作正常,但它没有文档,所以我必须查看OpenCL C Reference并尝试在C#中找到等效的

感谢阅读本文,我理解它有点模糊,我想要的是一个易于使用的OpenCL SDK和适当的文档(当然,除了C,我讨厌使用普通的C).

c# c++ gpgpu opencl

5
推荐指数
0
解决办法
603
查看次数

创建一个仅指向另一个数组的一部分的数组?

我有一个包含引用类型元素的巨大数组,我想创建许多其他数组,这些数组基本上只指向那个大数组的特定部分.

换句话说,我想创建"索引器"或"长度指针".

在C++中,使用指针很容易,并为每个指针分配一个长度,例如创建一个包含长度指针的结构.

我怎样才能在C#/ .NET中实现这一目标?

重点是避免复制任何东西,我只想指向已经存在于内存中的数组中的特定部分.

有任何想法吗?

c# arrays pointers

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

在vim中获取ocamlmerlin自动完成功能

我正在尝试为OCaml进行自动完成.我喜欢使用Vim,我找到了这个插件:

https://github.com/the-lambda-church/merlin

我使用OPAM安装它并添加了所需的行以将其加载到我的.vimrc

我确保OPAM bin文件夹(包含ocamlmerlin)在我的.profile文件中,并检查我是否可以从终端访问它,对于vim,我使用"Ctrl-r = $ PATH"打印了PATH变量,它显示了它包含OPAM bin文件夹.

它仍然不起作用,我不知道还有什么可以使其工作.我得到了语法高亮,但无论如何都没有merlin.我希望自动完成工作.

如果我按Ctrl-N显示完成建议我得到"正常"的vim完成,这基本上只是文档中提到的单词列表.

检查启动日志文件,我可以看到Vim确实加载了merlin:

chdir(/home/incraved/.opam/system/share/ocamlmerlin/vim/plugin)
fchdir() to previous dir
sourcing "/home/incraved/.opam/system/share/ocamlmerlin/vim/plugin/merlin.vim"
finished sourcing /home/incraved/.opam/system/share/ocamlmerlin/vim/plugin/merlin.vim
Searching for "/home/incraved/.opam/system/share/ocamlmerlin/vimbufsync/plugin/**/*.vim"
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

vim ocaml autocomplete merlin

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

Scala函数指针

谷歌没有帮助我解决这个问题,我希望这并不意味着它不可能:

在我的班级中,我希望有一个定义了签名的方法,但是没有定义正文(method1)

将有许多定义的方法满足此签名(impl1,impl2,impl3)

当我初始化对象时,我将选择(基于某些标准)哪个方法实现impl1,impl2,impl3分配给函数指针method1

基本上我问我怎么能有一个函数指针,可以指向满足其签名的任何函数.

编辑:

所以,事实证明它实际上是非常直接的:

var method: Int => Int = (x => x+1)

method = (x => x-1)
method = (x => x*2)
etc...
Run Code Online (Sandbox Code Playgroud)

我之前的问题是我使用"val"或"def"来定义"方法"

不确定为什么不直接建议.许多人喜欢将函数作为参数添加到某个辅助类,然后使用特定实现初始化该类.也许有一些我缺少的东西.

编辑2:我现在意识到我没有得到我正在寻找的答案,因为我没有正确地说出我的问题,我应该说我想要"委托"行为,因为它在C#中.

scala

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

Xamarin Studio创建的磁盘上的android签名密钥在哪里?

我使用我在Xamarin Studio中创建的密钥发布.磁盘上的那个键在哪里,所以我可以备份它?

android xamarin xamarin-studio

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

我应该在哪里开始ASP.NET Core中的持久后台任务?

在我的Web应用程序(ASP.NET Core)中,我想在后台运行一个正在侦听远程服务器的作业,计算一些结果并将其推送到Pusher上的客户端(websocket).

我不确定我应该在哪里开始这个任务.目前我在最后开始

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
Run Code Online (Sandbox Code Playgroud)

Startup.cs中

但我觉得这有点不对,在一个名为"Configure"的方法中启动后台作业是没有意义的.我期待在某个地方找到一个Start方法

此外,当我尝试使用EF Core 生成初始数据库迁移文件时,它实际上执行该方法并启动我的任务..这显然没有任何意义:

dotnet ef migrations add InitialCreate
Run Code Online (Sandbox Code Playgroud)

从控制台运行它会创建迁移代码,该代码将用于根据我的数据模型在SQL Server上创建数据库.

为什么没有一种方法我可以开始一个任务?我不希望这是一个单独的进程,它实际上不需要自己的进程,它本质上是Web服务器的一部分,因为它确实通过websocket与客户端(浏览器)进行通信,所以它是有道理的将其作为Web服务器的一部分运行.

c# hangfire .net-core asp.net-core

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

dotnet 5 和 Xamarin Android:未找到导入的项目“Xamarin.Android.CSharp.targets”

我在 MacOs Apple M1 芯片(ARM64 但使用 Rosetta 2)上运行:

  • 骑士 2020.3 EAP 10
  • 网络5
  • 安装在 Rider 中的 Xamarin Android 插件和 SDK。

当我打开 Xamarin Android 应用程序解决方案时,大部分代码都是红色的,包括“使用系统”之类的语句,并且出现以下构建错误:

The imported project "/usr/local/share/dotnet/sdk/5.0.100/Xamarin/Android/Xamarin.Android.CSharp.targets" was not found.
Run Code Online (Sandbox Code Playgroud)

从该路径来看,它似乎与 dotnet 5 有关。有人有线索吗?

.net xamarin.android xamarin rider

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

将列表转换为地图并在一行中获取项目

尝试:

(List(('c', 1)).toMap)('c')
Run Code Online (Sandbox Code Playgroud)

错误:

found   : Char('c')
required: <:<[(Char, Int),(?, ?)]
Run Code Online (Sandbox Code Playgroud)

但是,这很好用:

val m = List(('c', 1)).toMap
m('c') // gives 1 as expected
Run Code Online (Sandbox Code Playgroud)

为什么首先将它存储在变量中是否重要?这可能是个错误吗?

scala map

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

为什么在ArrayBuffer上调用"tail"需要线性时间?

检查:http://www.scala-lang.org/docu/files/collections-api/collections_40.html

它说ArrayBuffer在请求尾部时需要线性时间.但是,附加时速度要快得多

我的理解是ArrayBuffer只是一个动态数组.

怎么追加是分摊常数时间但是最后一个元素需要线性时间?

scala data-structures

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

如何将Maven/Java库(例如JFreeChart)声明为依赖?

我正在尝试添加JFreeChart库作为sbt项目的依赖项.

我添加了以下内容build.sbt:

libraryDependencies += "org.jfree" %% "jfreechart" % "1.0.14"
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用.

http://central.maven.org/maven2/org/jfree/jfreechart/1.0.14/jfreechart-1.0.14.pom上的pom文件说:

<artifactId>jfreechart</artifactId>
<groupId>org.jfree</groupId>
<version>1.0.14</version>
Run Code Online (Sandbox Code Playgroud)

如何在sbt中使用这样的maven库?

scala jfreechart maven sbt

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