我在使用 Visual Studio 2017 时遇到了一个烦人的问题。每当我使用 Ctrl+Click 导航打开文件时,该文件都会以紫色选项卡预览模式打开(由于缺乏更好的术语)。
请注意:我不是在询问有关 Visual Studio Code 的信息,而是在询问有关 VS 2017 的信息。我知道如何在 VSCode 中更改这些设置。在多次谷歌VS2017后,我最终放弃了。也许我没有正确地表达这个问题。
示例如下所示。
单击“保持打开”选项后,文件将添加到打开的选项卡集中。 我希望默认情况下有这种行为。
另外,是否可以将此选项卡添加到所有其他打开的选项卡的右侧?目前,它已将其自身添加到开头。我更喜欢在右侧/后面附加新选项卡。
我知道我的问题有一些答案,但答案不是很精细或令人信服.在我的程序中,为了将数据从一个活动传输到另一个活动,我将POJO类的内容转换为Json字符串并通过bundle传递.(METHOD1).
方法1
String jsonString = JacksonSingleton.getObjectMapper().writeValueAsString(object);
bundle.putExtra(KEY_STR, jsonString)
Run Code Online (Sandbox Code Playgroud)
在方法2中,我在bundle中传递一个Parcelable对象.
方法2
bundle.putExtra(KEY_STR, parcelableObject);
Run Code Online (Sandbox Code Playgroud)
如果我要实现方法2,我将必须实现'Parcelable'接口并编写自定义代码,用于编组和解组我的POJO类字段.
我的问题是,哪种方法在性能方面更好/更好?方法1非常方便,但我想遵循最佳实践.
我希望计算我的cuda代码的两个不同部分的执行时间。为了做到这一点,我试图用CudaEvent_t启动,停止。 我的问题是,是否可以在其他部分中使用相同的两个事件“开始”和“停止”来计算执行时间?
例如:
cudaEvent_t start, stop;
cudaEventCreate(&start);
cudaEventCreate(&stop);
// SECTION 1
cudaEventRecord(start, 0);
cudaMemcpy(..., ..., ..., cudaMemcpyHostToDevice);
cudaEventRecord(stop, 0);
cudaEventSynchronize(stop);
cudaEventElapsedTime(&executionTime, start, stop);
printf("SECTION 1 executionTime: %f", executionTime);
// SECTION 1
// SECTION 2
cudaEventRecord(start, 0); // Reusing start event
cudaMemcpy(..., ..., ..., cudaMemcpyDeviceToHost);
cudaEventRecord(stop, 0); // Reusing stop event
cudaEventSynchronize(stop);
cudaEventElapsedTime(&executionTime, start, stop);
printf("SECTION 2 executionTime: %f", executionTime);
// SECTION 2
Run Code Online (Sandbox Code Playgroud)
由于我正在尝试重新启动cudaEvent_t start,也为第2部分停止,因此这段代码会为第1部分和第2部分的执行时间给出准确的估计吗?还是我需要为第二部分创建两个附加事件start1和stop1?