小编Dan*_*ark的帖子

关机时自杀?停止java.util.Timer实例

我有一个java.util.Timer固定的间隔运行.我添加了一个Runtime#addShutdownHook,当VM正常结束或异常结束时它会关闭.然而,保持VM活着时main终止,除非我坚持做一个System.exitmain.我有什么方法可以检查我是否是最后一个Thread站立,或者其他一些方法来避免改变main那些在结束时正常退出的方式?

注意:我知道很多人认为java.util.Timer已弃用(不是),但除非你的选择帮助我解决这个问题......

java multithreading

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

除了性能问题,为什么Java仍然选择Groovy/JRuby等?

[这是关于最新技术的经验问题:我不是在问Java是否比在JVM中运行的动态语言更酷或更酷.

除了性能是主要决策因素的情况之外,公司/开发人员是否仍然愿意选择Java而不是Groovy,JRuby或Jython?

编辑:如果答案是"是",为什么?

个人注意:我要问的原因是,虽然我在Ruby中做了一些我的专业工作(现在不是JRuby),但在我的个人项目中,我使用的是Java.虽然我在Groovy中编写了非平凡的应用程序,但更喜欢Java,但我想知道我是否应该克服它并在Groovy中做所有事情.我喜欢Java,因为我觉得静态打字可以节省我的时间并帮助重构.(不,我不熟悉Scala.)但是,我觉得这个非常经验的,关于主题的编程问题可能会为我的决定提供信息.

java groovy dynamic-languages jruby

4
推荐指数
3
解决办法
1381
查看次数

改变CGRect(或任何结构)?

我在代码中做了很多这样的事情:

self.sliderOne.frame  = CGRectMake(newX, 0, self.sliderOne.frame.size.width, self.sliderOne.frame.size.height); 
Run Code Online (Sandbox Code Playgroud)

有什么方法可以避免这种繁琐的代码吗?我尝试过这种类型的东西:

self.sliderOne.frame.origin.x = newX;
Run Code Online (Sandbox Code Playgroud)

但是我收到了一个Lvalue required as left operand of assignment错误.

objective-c data-structures

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

使用CGFloat而不是浮动?他们不这样做

[我可能误解了整个主题,因为我已经成长为语言,允许开发人员几乎完全忽略处理器架构,如Java,除了在某些特定情况下.如果我有一些错误的概念,请纠正我.]

在这里阅读似乎建议使用CGFloat代替浮点数,因为它可以为我的代码提供面向未来的不同处理器体系结构(64位句柄浮动不同).假设这是正确的,那么为什么UISlider,例如,float直接使用(对于值)?对我来说,阅读它们float并将其转换为a CGFloat是不是错(或其他),因为无论如何,如果架构发生变化,我的代码是不正确的?

objective-c cgfloat

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

如何在XCode中重命名项目?

在XCode中重命名项目有一些非常可怕的指示.有没有简单的方法来做到这一点?

projects xcode4

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

插件程序:LGPL的GPL?

我有两个不同的项目:

  1. 我想根据GPL许可证发布的程序.
  2. 插件API:插件是使用此API中的接口编写的,而本程序使用API​​与插件进行通信.我想用LGPL许可证发布The Plugin API.

一个问题是我不希望插件必须显示它们的来源.他们会被GPL许可证"感染"吗?它们将根据API进行编译,并且不需要编译程序的源代码.

另一个问题是LGPL的所有关于"静态链接"的讨论:程序和API都是用Java编写的.这有关系吗?

无论如何,我的基本问题是:使用GPL发布本程序及其与LGPL的公共API是否有意义?

java licensing open-source gpl lgpl

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

在App结束之前持有的对象:没有Dealloc可以吗?

我不收拾单一对象生活在其中的应用程序的生命dealloc.我应该有什么理由吗?

- (void) dealloc
{
    // never deallocs
    [super dealloc];
}
Run Code Online (Sandbox Code Playgroud)

我有点假设iOS让我有足够的空间来清理我的应用程序的所有内存.是对的吗?

objective-c ios

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

清除登录XCode 4

如何清除XCode 4中的日志?(似乎在XCode 3中,这需要自定义工具栏,这是不可能的......)

xcode xcode4

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

在Obj-C中使用C语法调用静态方法?

我可以使用适当的Obj-C语法重做这个方法,但我想知道如何从Obj-C调用它.该方法看起来像这样

@interface YarMidiCommon : NSObject

static
MIDIPacketList *makePacketList(Byte *packetBuffer, const UInt8 *data, UInt32 size);

@end
Run Code Online (Sandbox Code Playgroud)

但我不知道如何调用该方法.我试过了

Byte packetBuffer[size+100];
MIDIPacketList *packetList = makePacketList(packetBuffer, bytes, size);
Run Code Online (Sandbox Code Playgroud)

但错误是"有内部联系,但没有定义." 如果不诉诸"适当的"Obj-C语法,这可能吗?

为了记录,我想模仿的方法就像是

+ (MIDIPacketList*) makePacketListWithPacketBuffer:(Byte*)packetBuffer data:(const UInt8 *)data size:(UInt32)size;
Run Code Online (Sandbox Code Playgroud)

这是冗长而烦人的,因为这里的一切都是C无论如何.

这与我今天得到的另一个答案有关.

syntax objective-c

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

在ITC中从App Bundle添加和删除应用程序时遇到错误

我正在尝试添加和删除应用程序包中的应用程序.如果我在现场看应用程序包,我看不到Edit按钮(而是有一个Arrange按钮).如果我从销售中删除App Bundle(取消选中"已售出"),我会收到一个edit按钮.然后,我将一个应用程序添加到捆绑包(或从捆绑包中删除一个应用程序),但在保存时,消息是:

保存或更新捆绑包时出错:尝试在不允许编辑的捆绑包中添加或删除应用程序.

在此输入图像描述

如何在Tunes Connect中添加或删除应用包中的应用?

itunesconnect app-store

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