为了好玩,我正在编写香蕉图的模拟。我想使用并发,但我不完全确定如何使用。
我在一个Game类中有一个主要方法。每个播放器线程都致力于解决方案。在某些时候,玩家会“剥皮”。在此操作期间,每个玩家都会得到一张新牌。播放器线程之一必须通知Game线程。
伪代码如下所示:
while (no player has reported they are finished) {
if (player reports it is time to peel) {
everyone peel
}
everyone work towards completion of puzzle
}
Run Code Online (Sandbox Code Playgroud)
我如何在 Java 中实现它?(我不一定要寻找完全充实的解决方案,只是指出我正确的方向。)我想如何处理对象之间的通知?
澄清一下:这不是用户互动游戏。我只是想尝试不同的算法,看看哪种算法可以最快地解决问题。如果有的话,“游戏”将编写一个算法并将其插入以查看它是如何工作的。
在我的程序中,我正在编写一封电子邮件,使用安装在用户计算机上的默认电子邮件客户端软件进行发送.
我已经写了mailto地址,主题,多字体,我有几个附件要包括在内.
我几乎使用mailto和ShellExecute工作如下:
Message := 'mailto:someone@somewhere.com'
+ '?subject=This is the subjectBehold Error Report'
+ '&body=This is line 1' + '%0D%0A'
+ 'This is line 2' + '%0D%0A'
+ 'This is line 3'
+ '&Attach=c:\file1.txt';
RetVal := ShellExecute(Handle, 'open', PChar(Message), nil, nil, SW_SHOWNORMAL);
if RetVal <= 32 then
MessageDlg('Cannot find program to send e-mail.', mtWarning, [mbOK], 0);
Run Code Online (Sandbox Code Playgroud)
在Windows Vista计算机上使用Delphi 2009,这将打开Microsoft Mail"创建邮件"窗口,正确填充"收件人","主题"和"正文".但是文件没有附加.
当我研究这个时,我注意到一些评论说这种技术不适用于所有邮件客户端.然而,大多数评论都相当陈旧,因为我意识到这是一种非常古老的技术.
然后我发现Zarko Gajic说 "这种方法没问题,但是你无法以这种方式发送附件".
我看过还有Windows Simple Mail API(MAPI),但Zarko说只有最终用户拥有符合MAPI标准的电子邮件软件才有效.有关使用MAPI和Delphi的文档很好(例如使用mapi发送电子邮件),但他们都有免责声明MAPI并不总是与Windows一起安装.
此外,我真的希望在用户的默认电子邮件程序中首先显示该消息,因此他们将其作为其电子邮件记录的一部分,并且他们可以编辑它并决定是否以及何时发送它.我不确定MAPI是如何工作的,如果它会这样做.
所以我的要求是:
将电子邮件发送到用户的邮件程序中.
允许一个或多个附件.
在XP上(即XP,Vista或7)使用任何Windows机器上的所有电子邮件客户端(希望如此).
有这样的动物吗?或者也许有人知道如何使用mailto/ShellExecute技术获取附件?
大多数人做什么?
编辑:
MAPI解决方案甚至是Indy解决方案都有一些答案. …
我需要从unicode widestring中检测语言.我已经尝试使用iMultiLang2接口,如果语言环境有代码页,它就能正常工作.某些语言环境/语言没有代码页,仅映射到unicode.我怎样才能得到那些lcid?格鲁吉亚语,印地语和许多其他语言没有代码页,只有unicode排序规则
我正在使用Delphi7 Enterprise.
非常感谢任何帮助
问候
我是一个Java极客,我已经开始写一个博客(使用Wordpress),但博客定制是一个痛苦,因为PHP不是我的事情,我也想让它成为我的网站的一部分 - 登录/会话/等应该开箱即用.
我知道Pebble,但它不支持Google App Engine [GAE],因为它将数据写入XML文件.
有没有人知道任何其他Java博客平台[可能与GAE兼容]如Wordpress?
我是一名PHP程序员,他正在学习更多关于adobe产品(包括flex)的知识,并希望自己能够识别flash/flex是否适合客户/项目使用(当然,当它不适合使用的技术时) ).
我想获得它的最好方法是通过经验,所以如果您知道任何示例(完整站点或甚至站点的一小部分),您认为开发人员在为该项目/部件选择闪存技术时是对还是错,请在此处添加说明原因.对于未在闪存中实现但应该已经实现的其他项目也是如此.如果您认为开发人员做出了错误的决定,请说明原因以及您将使用的内容.我们的想法是提供真实的例子来帮助像我这样的人进入flash/flex,但是想要了解正确的方法将其融入他们的工作中.
请看下面的情况,肯定会有趣..
如果我想为多个对象分配相同的值,我将使用这样的东西
string1 = string2 = string3 = string 4 = "some string";
Run Code Online (Sandbox Code Playgroud)
现在我想要做的是,我想比较string1,string2,string3和string4与"someotherstring"...问题是有没有办法做到这一点,而无需编写单独的比较.即
string1 == "someotherstring" || string2 == "someotherstring" || string3 == "someotherstring" || string4 == "someotherstring"
Run Code Online (Sandbox Code Playgroud)
希望我能够解释这个问题..请向我提供帮助.
此致,Paresh Rathod
如何使用PIL检测PNG图像是否具有透明的alpha通道?
img = Image.open('example.png', 'r')
has_alpha = img.mode == 'RGBA'
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,我们知道PNG图像是否具有alpha通道,但是如何获得alpha值?
我没有在PIL网站上描述的img.info字典中找到"透明度"键
我正在使用Ubuntu和zlib1g,已经安装了zlibc软件包.
您可能已经注意到某些Web应用程序(例如,GMail的某些部分)以比DD/MM/YYYY更人性化的格式显示日期.
例如,如果我打开23日的邮件(在撰写本文时恰好是3天前,我会得到以下内容:
12月23日(3天前)
我想在我自己的Web应用程序中实现类似的逻辑.
例如,在处理.NET TimeSpan对象时,我想将其转换为如下文本:
2个月
3天
是否有一个.NET库能够做到这一点?
如果不是,我可能会建立一些基本的和开源的东西.
我在这里做了一个基本的开始:
public static class TimeSpanHelpers
{
public static string ToHumanReadableString(
this TimeSpan timeSpan)
{
if (timeSpan.TotalDays > 30)
return (timeSpan.TotalDays / 30) + " month(s)";
if (timeSpan.TotalDays > 7)
return (timeSpan.TotalDays / 7) + " week(s)";
return (timeSpan.TotalDays) + " day(s)";
}
}
Run Code Online (Sandbox Code Playgroud) 如何将日期(12/24/2009 12:48:00 PM)转换为格式dd-mm-yy?
我尝试了以下代码:
DateTime.TryParse(12/24/2009 12:48:00 PM,out registereddate);
strregdate = registereddate.ToString("dd-mm-yyyy");
Run Code Online (Sandbox Code Playgroud)
但是,产量为24-48-2009.如何转换
我有时不想运行所有测试以节省时间.我知道我可以评论测试.但这种方法并不优雅.我想知道是否有一些简单的方法可以做到这一点.
所有建议表示赞赏.
谢谢你的时间和最好的问候,Box He
c# ×3
delphi ×2
java ×2
.net ×1
adobe ×1
apache-flex ×1
asp.net ×1
attachment ×1
blogs ×1
concurrency ×1
date ×1
email ×1
flash ×1
image ×1
mailto ×1
notify ×1
php ×1
phpunit ×1
png ×1
python ×1
shellexecute ×1
string ×1
timespan ×1
transparent ×1
unicode ×1
unit-testing ×1