小编Bol*_*ski的帖子

使用AppDomain加载/卸载外部程序集

我的方案如下:

  • 创建新的AppDomain
  • 将一些组件加载到其中
  • 加载dll做一些魔法
  • 卸载AppDomain以释放内存和已加载的库

下面是我正在尝试使用的代码

    class Program
{
    static void Main(string[] args)
    {
        Evidence e = new Evidence(AppDomain.CurrentDomain.Evidence);
        AppDomainSetup setup = AppDomain.CurrentDomain.SetupInformation;
        Console.WriteLine("Creating new AppDomain");
        AppDomain newDomain = AppDomain.CreateDomain("newDomain", e, setup);
        string fullName = Assembly.GetExecutingAssembly().FullName;
        Type loaderType = typeof(AssemblyLoader);
        var loader = (AssemblyLoader)newDomain.CreateInstanceFrom(loaderType.Assembly.Location, loaderType.FullName).Unwrap();
        Console.WriteLine("Loading assembly");
        Assembly asm = loader.LoadAssembly("library.dll");
        Console.WriteLine("Creating instance of Class1");
        object instance = Activator.CreateInstance(asm.GetTypes()[0]);
        Console.WriteLine("Created object is of type {0}", instance.GetType());
        Console.ReadLine();
        Console.WriteLine("Unloading AppDomain");
        instance = null;
        AppDomain.Unload(newDomain);
        Console.WriteLine("New Domain unloaded");
        Console.ReadLine();
    }

    public class …
Run Code Online (Sandbox Code Playgroud)

.net c#

13
推荐指数
4
解决办法
2万
查看次数

进行交叉编译时出错:不支持的GOOS/GOARCH对linux/amd64

我正试图在windows上交叉编译go代码,针对linux机器.我用简单的go代码来确定目标操作系统/平台,

package main

import "fmt"
import "runtime"

func main() {
        fmt.Printf("OS: %s\nArchitecture: %s\n", runtime.GOOS, runtime.GOARCH)
}
Run Code Online (Sandbox Code Playgroud)

运行上面的代码给了我

OS: linux
Architecture: amd64
Run Code Online (Sandbox Code Playgroud)

当我尝试在Windows上交叉编译时(使用JetBrain的Goland IDE)

> go version
go version go1.9.2 windows/amd64
Run Code Online (Sandbox Code Playgroud)

使用GOOS=linux ;GOARCH=amd64环境标志,我得到以下错误

cmd/go: unsupported GOOS/GOARCH pair linux /amd64
Run Code Online (Sandbox Code Playgroud)

我是golang的新手,所以我可能会遗漏一些简单的东西,但这个错误让我陷入困境.任何帮助赞赏...

cross-compiling go

2
推荐指数
1
解决办法
1881
查看次数

标签 统计

.net ×1

c# ×1

cross-compiling ×1

go ×1