小编Cae*_*lan的帖子

如何强制Jenkins Blue Ocean显示打印输出而不是"打印消息"?

在下面的屏幕截图中,一些调试条目显示输出文本(- Print Message在末尾),而其他调试条目只显示Print Message.要查看这些,您必须展开步骤以查看输出.

詹金斯蓝海输出

所有行都使用该格式print "TEXT HERE".我已经尝试使用print,printlnecho.都具有相同的输出.

为什么这些有时显示消息,而其他人强迫它进入折叠部分?是否可以将其配置为始终显示?正常的非蓝海詹金斯界面显示正常,但有很多冗长.

groovy jenkins jenkins-pipeline jenkins-blueocean

12
推荐指数
4
解决办法
2235
查看次数

C#WPF BitmapSource内存泄漏?

我正在开发一个BlackJack程序,它显示了BlackJack表,卡片等.计划是它将通过自动化策略一个接一个地玩数千手牌.

我有一个PlayerSeat UserControl,它包含一个绑定到ObservableCollection的ItemsControl.此CardInHand类包含名为CardImage的BitmapSource.当实例被装箱时,它使用以下代码从资源加载卡片图像:

[System.Runtime.InteropServices.DllImport("gdi32.dll")]
public static extern bool DeleteObject(IntPtr hObject);

private BitmapSource GenerateCardImage() {
        Stream TempStream = this.GetType().Assembly.GetManifestResourceStream("BlackJack.Resources.CardImages.Card_" + m_Card.ShortTitle + ".gif");
        System.Drawing.Bitmap sourceBMP = new System.Drawing.Bitmap(TempStream);
        BitmapSource tempBitmapSource = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
            sourceBMP.GetHbitmap(),
            IntPtr.Zero,
            System.Windows.Int32Rect.Empty,
            BitmapSizeOptions.FromWidthAndHeight(sourceBMP.Width, sourceBMP.Height)
        );
        TempStream.Dispose();
        DeleteObject(sourceBMP.GetHbitmap());
        return tempBitmapSource;
}
Run Code Online (Sandbox Code Playgroud)

问题是,在我运行~500轮(~4000手或~10000卡)后,我最终得到了GDI +错误,应用程序占用了大约400MB的RAM.这种增长很快,并且与已经玩过的手的数量有关.

DeleteObject()是我在另一个站点上发现的,它说这是从Bitmap释放资源的最佳方法.这可能会产生一些影响,但不是我正在寻找的东西.我也尝试过Dispose().

另一个网站表示它与ItemsSource绑定有关.我删除了绑定,内存仍然增长.反过来,我离开了绑定并删除了生成位图的代码.它打了4万发子弹并且没有大幅度增长(在运行的40分钟内可能+ 20MB).

每一轮后,ObservableCollection都是Clear().我已经尝试将集合,CardInHand和BitmapSource属性归零,但无济于事.

如何让这些图像显示在屏幕上,同时确保它们的对象在不再需要后会被破坏?

感谢您的时间.

c# wpf memory-leaks bitmapsource

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

在企业环境中使用GitKraken执行远程操作时,为什么会出现"格式错误的URL"错误?

当使用GitKraken并尝试在我的公司环境中执行远程操作(推/拉/获取和可能克隆)时,我收到如下错误:

GitKraken错误

Fetch failed for 'origin'
malformed URL
[Proxy information]
Run Code Online (Sandbox Code Playgroud)

我的存储库只能在内部访问,上面的错误消息不是正确的远程.我通过验证了本地存储库中的正确远程git remote -v.我也验证了这不是git问题,因为我可以git通过命令行执行所有必要的操作.

我的组织的代理自动配置(PAC)文件已正确设置并返回DIRECT(意味着没有代理)我的远程.

问题:

  1. 为什么GitKraken在我没有配置代理时会使用代理?
  2. 为什么GitKraken使用外部代理作为内部地址?
  3. 我该如何解决这个问题并能够与我的遥控器进行交互?

git proxy pac gitkraken zscaler

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

sed有条件吗?匹配行首,包含文本,然后追加

我有一个要在脚本中编辑的配置文件,有几行,但格式基本上是:

...
admin_users = alice, bob
admin_groups = accounting, finance
...
Run Code Online (Sandbox Code Playgroud)

我想将用户追加到admin_users行,如果该行尚不存在。

据我了解,我基本上需要将两个条件组合起来...

/^admin_users/s/$/, charlie/=添加, charlie到以开头的行admin_users /charlie/!s/$/, charlie/=追加, charlie到不包含的行charlie

我已尝试使用Google搜索功能,但找不到任何相关内容。如果可能的话,语法和简短说明将不胜感激。

sed

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