小编Zun*_*Tzu的帖子

如何将在Typescript中开发的Angular 2应用程序部署到生产中?

我是Angular 2的新手.我对Angular 2在生产环境中的工作原理感到困惑.

  1. 在生产服务器中运行Angular 2应用程序的先决条件是什么?

  2. 是否可以在IIS服务器中部署应用程序或是否需要节点服务器?

  3. 在使用节点在开发机器中编译文件之后,我们是否需要将.js和.ts部署到生产中?

angular

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

微软的债券和谷歌的协议缓冲区之间的差异

最近(2015年1月)微软开源债券,他们用于处理模式化数据的框架.在许多方面,它类似于谷歌的协议缓冲区.

这两者之间最大的区别是什么?什么是利弊,也就是说,在哪种情况下我想使用一种,而不是另一种情况?当然,我不是在谈论与其他项目或现有API的一致性等明显的事情,而是两个库的功能.举个例子,bonded<T>如果我没记错的话,Bond会在Protocol Buffers中没有对应的.

serialization marshalling protocol-buffers bond

23
推荐指数
1
解决办法
8820
查看次数

是否可以声明异步方法为返回void以使CS4014警告静音?

Visual Studio会对此代码发出警告('因为不等待此调用,在调用完成之前会继续执行当前方法').

static void Main(string[] args)
{
    FireAndForget(); // <-- Warning CS4014
    // Do something else.
}

static async Task FireAndForget()
{
    // Do something (cannot throw).
}
Run Code Online (Sandbox Code Playgroud)

我的理解是,在这种特殊情况下不等待任务是可以的,因为FireAndForget永远不会抛出异常.

我没有考虑使用pragma禁用警告,而是考虑将FireAndForget的返回类型从Task更改为void.这有效地使编译器沉默.

static async void FireAndForget() // <-- Task changed to void
{
    // Do something (cannot throw).
}
Run Code Online (Sandbox Code Playgroud)

然而,根据Stephen Cleary的说法,应该避免使用'async void'方法,因此我不太清楚该怎么做.

如果方法不是设计为首先等待并且没有抛出异常,那么是否可以使用'async void'方法?

c# async-await

9
推荐指数
1
解决办法
2530
查看次数

应该弃用Task.Wait吗?

我学到了从池线程调用Task.Wait会导致线程饥饿死锁的困难方法.

根据这篇MSDN文章,在"死锁"一章中,我们应遵守这两条规则:

  • 不要创建任何同步方法等待异步函数的类,因为可以从池中的线程调用此类.
  • 如果类阻塞等待异步函数,则不要在异步函数内使用任何类.

似乎唯一合法使用Task.Wait的地方是主要功能 - 我在这里夸大了一点,但你明白了.

为什么Task.Wait仍然是.NET框架的一部分,看它有多危险?

.net c# asynchronous task-parallel-library async-await

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