我在winsock的recv()循环中遇到了问题.我试图在iResult == 0时终止循环,但是,循环仅在套接字关闭时结束.它似乎挂在最后一个recv(),其中iResult等于0.那么有关如何有效终止循环的任何想法?我的最终目标(无论iResult是否= 0;或许我的方法是错误的)是在读取所有发送的信息时停止循环.这是循环.
do
{
iResult = recv(socket, recvbuf, BUFLEN-1, 0);
if(iResult > 0){
// Null byte :)
// Remove that garbage >:(
recvbuf[iResult] = '\0';
printf("Recvbuf: %s\n\n\niResult: %d\n",recvbuf,iResult);
continue; // working properly
}
else if(iResult == 0)
// Connection closed properly
break;
else
{
printf("ERROR! %ld",WSAGetLastError());
break;
}
} while(iResult > 0);
Run Code Online (Sandbox Code Playgroud)
就像我说的,我收到的所有数据,我都无法退出循环.下一步是将数据写回服务器,但它会挂起,直到ping超时.套接字是SOCK_STREAM,BUFLEN定义为0x200
谢谢
我试图拦截System.out和System.err,但保持在必要时直接写入原始流的能力.
PrintStream ps = System.out;
System.setOut(new MyMagicPrintStream());
ps.println("foo");
Run Code Online (Sandbox Code Playgroud)
不幸的是,System类实现的细节意味着在我的例子中,"foo"被发送到真正的stdout的MyMagicPrintStream instread.有谁知道如何获得真实/原始OutputStreams的引用.
谢谢!
PS:否则会导致StackOverflowError < - 用于SEO.
我正在尝试在很多gziped csv文件中搜索某个字符串,该字符串位于第一行,我的想法是通过组合find,zcat和head来获取每个文件的第一行.但我不能让他们一起工作.
$find . -name "*.gz" -print | xargs zcat -f | head -1
20051114083300,1070074.00,0.00000000
xargs: zcat: terminated by signal 13
example file:
$zcat 113.gz | head
20050629171845,1069335.50,-1.00000000
20050629171930,1069315.00,-1.00000000
20050629172015,1069382.50,-1.00000000
.. and 2 milion rows like these ...
Run Code Online (Sandbox Code Playgroud)
虽然我通过编写bash脚本,遍历文件并写入临时文件来解决问题,但知道我做错了什么,怎么做以及是否有其他方法可以解决问题会很棒.
我有一个显示UITextField的视图控制器.我在这里带键盘
- (void)viewDidAppear:(BOOL)animated
{
[wordTextField becomeFirstResponder];
}
Run Code Online (Sandbox Code Playgroud)
然后我有按钮,它关闭键盘而不关闭控制器本身:
- (void)cancel:(id)sender
{
if([wordTextField isFirstResponder])
{
[wordTextField resignFirstResponder];
}
}
Run Code Online (Sandbox Code Playgroud)
在此仪器将显示泄漏
# Category Event Type Timestamp RefCt Address Size Responsible Library Responsible Caller
0 Malloc 128 Bytes Malloc 00:11.239 1 0x3b82550 128 UIKit UIKeyboardInputManagerClassForInputMode
Run Code Online (Sandbox Code Playgroud)
[wordTextField resignFirstResponder]提到的堆栈中的某个地方.
即使我自己不带键盘并让用户触发它,我仍然有泄漏.在这种情况下,堆栈中提到的代码没有任何内容.
每次我调用IJavaProject.findPackageFragmentRoots(IClasspathEntry cpe)并传递一个类CPE_PROJECT的IClasspathEntry时,它返回一个空列表.我暂停调试器并在Eclipse Display视图中运行以下行以查看发生了什么:
IClasspathEntry cpe = javaProject.getRawClasspath()[8];
cpe.toString();
(java.lang.String) /Some Project[CPE_PROJECT][K_SOURCE][isExported:false][combine access rules:false]
// Show that the referenced project exists and has a root containing source
IClasspathEntry cpe = javaProject.getRawClasspath()[8];
IProject someProject = ResourcesPlugin.getWorkspace().getRoot().getProject(cpe.getPath().toString());
IJavaProject someJavaProject = (IJavaProject) someProject.getNature(JavaCore.NATURE_ID);
IPackageFragmentRoot pfr = someJavaProject.getPackageFragmentRoots()[0];
new Boolean(pfr.getKind() == IPackageFragmentRoot.K_SOURCE).toString();
(java.lang.String) true
IClasspathEntry cpe = javaProject.getRawClasspath()[8];
javaProject.findPackageFragmentRoots(cpe);
(org.eclipse.jdt.core.IPackageFragmentRoot[]) []
Run Code Online (Sandbox Code Playgroud)
类路径条目是Java项目的类路径的一部分,它的类型为CPE_PROJECT.此外,引用的Java项目(标题为"Some Project")至少有一个包含源的根.根据IJavaProject的javadoc,它似乎应该返回至少一个IPackageFragmentRoot,但它不会.
知道我在这里误会了什么吗?如何从CPE_PROJECT类型的IClasspathEntry获取IPackageFragmentRoots而不做一些hackish?(我的意思是,我可以从类路径条目中获取IJavaProject并遍历其原始类路径,忽略未导出的条目,以搜索IPackageFragmentRoots.)
当页面加载图像时,它只加载一次,还是每次加载标记时?那jquery呢,附加一个img会导致它重新加载吗?我问这个是因为我有一个高分辨率图像,但需要你在标记的许多实例中使用它.
<img src="hello.jpg" />
<img src="hello.jpg" />
<img src="hello.jpg" />
var myimg = $('<img src="hello.jpg />');
$('img').append(myimg);
Run Code Online (Sandbox Code Playgroud) 我正在研究Paxos,我对算法在这个人为的例子中应该如何表现感到困惑.我希望下面的图解释了这个场景.

几点:
(instance, proposal_num)(instance, proposal_num, proposal_val)在这里似乎虽然协议是"正确的",即只S2选择了一个值,但Server1和Server2认为它是因为提议编号不同而被选中的.
Paxos算法是否仅在将Decide(...)消息发送给学习者时终止?我必须误解Paxos Made Simple,但我认为,当提议者达到他们的Propose(...)消息的法定人数时,就做出了选择.
如果仅在将Decide(...)消息发送给代理之后才进行选择,那么Server2应该Decide(1, 5, S2)在它恢复时终止其发送,因为它稍后会看到它Prepare(1, 7)吗?
我有一个充满页面和用户控件的应用程序,其中许多都有一个或多个标签控件,用于向用户显示各种不同的消息.
示例:通常在Company.aspx页面上使用的AddCompany.ascx用户控件(使用App.Master MasterPage)上面有一个名为"OutOfCreditLabel"的标签,其中包含Text ="错误:您无法创建新公司,因为您已经出局信用".代码检查信用额度并在需要时显示标签.
我想摆脱所有这些标签,只是有一个我可以从任何地方调用的方法
ShowUserMessage("Text goes here");
Run Code Online (Sandbox Code Playgroud)
在之前的项目中,我已将其实现为母版页上的单个标签和.master.cs中的公共方法 - 只要页面具有该行
<%@ MasterType VirtualPath="~/App.master" %>
Run Code Online (Sandbox Code Playgroud)
在它,这工作 - 但我无法让它在用户控件(.ascx.cs)上工作.这有诀窍吗?
或者,还有更好的方法?
对于可在网站中的任何位置使用的"全局"用户消息方法,您会建议什么?
也许是任何不错的jQuery解决方案?
更新
RPM1984已要求进一步澄清,所以我试图以不同的方式问这个问题:
我需要一个方法,我可以从代码隐藏(页面或用户控件)调用,然后将显示我指定给用户的任何文本,例如stackoverflow在您下次访问网站时如何告诉您有关问题的新答案.它可以在窗口的顶部(如SO)或页面的某个位置,无关紧要.重要的是它是一种"全局"方法,而不是各种javascript警报和asp:标签遍布项目中的每个其他页面和用户控件.
像这样的场景:
用户单击我页面上"widget manager"用户控件上的"Create Widget"按钮.在事件处理程序中:
if (User.IsOutOfCredit)
{
ShowUserMessage("Sorry, you cannot create widgets; you are out of credit.");
}
Run Code Online (Sandbox Code Playgroud)
这导致用户看到"抱歉,你不能创建小部件;你没有信用." 无论是在某个页面的弹出页面还是红色文本中,或者像StackOverflow一样在顶部,一切都很好
那有意义吗?
我有一个<video>id为"liveVideo" 的标签.如何在几秒钟内检索视频的长度?
谢谢,
大卫!
我main.xml看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
由于根元素是a LinearLayout,它扩展了ViewGroup,为什么main.xml变成a View而不是ViewGroup?例如,在我的主Activity类中,我尝试获取LinearLayout包含的子视图的数量,如下所示:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ViewGroup vg = (ViewGroup) findViewById(R.layout.main);
Log.v("myTag", "num children: " + vg.getChildCount());
Run Code Online (Sandbox Code Playgroud)
但是当我打电话时它崩溃了vg.getChildCount().
这样做的正确方法是什么?
java ×3
html ×2
javascript ×2
jquery ×2
algorithm ×1
android ×1
asp.net ×1
bash ×1
c++ ×1
consensus ×1
distributed ×1
eclipse ×1
eclipse-jdt ×1
html5 ×1
html5-video ×1
iphone ×1
layout ×1
master-pages ×1
memory-leaks ×1
paxos ×1
pipe ×1
recv ×1
unix ×1
view ×1
winapi ×1
windows ×1
winsock ×1
zcat ×1