在Unity中实现Span <T>

时间:2019-07-04 09:52:07

标签: c# unity3d memory

我正在尝试在Unity中使用Span

我知道尚不支持curl -x "" 127.0.0.1:5000/main.cpp --compressed // g++ -O0 main.cpp server.cpp connection_manager.cpp request_handler.cpp // connection.cpp reply.cpp mime_types.cpp request_parser.cpp -lboost_system // -lpthread -lz // // run like: ./a.out 0.0.0.0 5000 . // // main.cpp // ~~~~~~~~ // // Copyright (c) 2003-2017 Christopher M. Kohlhoff (chris at kohlhoff dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // #include <iostream> curl: (23) Failed writing received data to disk/application #include <string ,但是无论如何我都希望实现它。

我直接从NuGet下载了该库。我从nuget包的netstandard2.0文件夹中获得了System.Memory,并将其拖到项目的Assets / Scripts文件夹中。

但是出现此错误,并且无法在我的IDE(骑士)中使用它。

  

由于不加载程序集'Assets / System.Memory.dll'   错误:无法解析参考   'System.Runtime.CompilerServices.Unsafe'。程序集是否缺失或   与当前平台不兼容?

我的问题是:如何在Unity中使用Span?


Unity版本:Unity 2019.1.7f。
操作系统:Windows

2 个答案:

答案 0 :(得分:0)

所以,我尝试了注释中的解决方案,没有运气。
我查看了nuget中的依赖项,但是在那里没有发现任何问题。考虑到我没有使用nuget导入库,因为我知道它们可能会统一产生问题。我从发送的链接中下载了它。

所以,这是解决方法:

  1. 我可以直接下载here-下载软件包

  2. System.Memory.dll从lib / netstandartd2.0文件夹直接导入“项目窗口”

  3. 在“项目”窗口中选择System.Memory.dll,然后禁用“验证引用”

enter image description here

现在一切都很好。

我从unity forum thread中获取了信息并应用于我的情况。 (在论坛中,他们正在使用Unity软件包,而我只是在素材资源上设置库)

答案 1 :(得分:0)

我遇到了同样的问题。

通过下载missing package

解决了

并将 lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll 复制到我的游戏资产文件夹。