在大文件上计算单个MD5校验和时,通常使用什么技术将各种MD5值组合成单个值?你刚刚把它们加在一起吗?我对任何特定的语言,库或API都不感兴趣; 相反,我只对它背后的技术感兴趣.有人可以解释它是如何完成的吗?
给出伪代码中的以下算法:
MD5Digest X
for each file segment F
MD5Digest Y = CalculateMD5(F)
Combine(X,Y)
Run Code Online (Sandbox Code Playgroud)
但究竟会Combine做什么?它是否将两个MD5摘要一起添加,或者是什么?
我订了一个Event内部的class.如
MainStation mainStation = StationFactory.GetMainStation();
mainStation.FrequencyChanged += new EventArgs(MainStation_FrequencyChanged);
Run Code Online (Sandbox Code Playgroud)
我的MainStation班级通过调用事件在某种情况下引发事件FrequencyChanged()
问题
现在我有一个场景,我必须实例化SubStation,MainStation其中也是一个MainStation具有一些附加功能的子类,并且FrequencyChanged事件必须作为MainStationsubcrbed 订阅.考虑下面提到的代码:
public class MainStation
{
public event EventHandler FrequencyChanged;
public static SubStation CreateSubStation()
{
SubStation subStation = new SubStation();
//here I want to pass/bubble FrequencyChanged event to SubStation
subStation.FrequencyChanged = FrequencyChanged; //THIS IS WRONG
}
}
Run Code Online (Sandbox Code Playgroud)
底线
我想触发一个类从另一个类订阅的事件,也冒泡事件
更新
StationFactory创建MainStation,实例中的FrequencyChanged事件MainStation按第一个代码块中的定义设置.
我有一个curried函数,我希望它支持不同类型的参数,这些参数不在继承关系上:
type MyType1 = A | B of float
type MyType2 = C | D of int
Run Code Online (Sandbox Code Playgroud)
我试图做的是:
let func x y =
match (x, y) with
| :? Tuple<MyType1, MyType1> -> "1, 1"
| _ -> "..."
Run Code Online (Sandbox Code Playgroud)
然而,这是不可能的.F#抱怨:
类型''a*'b'没有任何正确的子类型,不能用作类型测试或运行时强制的来源.
这样做的优雅方式是什么?
编辑:让我试着澄清一下.
我有两个相似但不同的类型.我可以很容易地将一种类型转换为另一种类型 我想定义一个二进制操作,它将作用于那些类型的实体,但我想向客户端公开一个操作.
也就是说,而不是提供:
let op11 (x : MyType1) (y : MyType1) = // do something useful
let op12 (x : MyType1) (y : MyType2) =
// convert y to MyType1
let y' = // ... …Run Code Online (Sandbox Code Playgroud) 我编写了以下代码,它工作正常,但如果表包含一百万条记录,则需要3秒才能完成.有没有办法优化以下代码.
DBCC DROPCLEANBUFFERS;
DBCC FREEPROCCACHE;
DECLARE @Page_Size int;
DECLARE @Page_Number int;
DECLARE @Lower_Bound int;
DECLARE @Upper_Bound int;
SET @Page_Size = 30;
SET @Page_Number = 30000;
SET @Lower_Bound = (@Page_Number - 1) * @Page_Size;
--SET @Upper_Bound = @Page_Number * @Page_Size;
WITH Customers AS--(Row_Numbr, Record_Id, First_Name,
Middle_Name, Last_Name, Email, Telephone) AS
(
SELECT ROW_NUMBER()
OVER
(ORDER BY Account.Customer.Record_Id) AS Row_Numbr, *
FROM Account.Customer
)
SELECT top(@Page_Size) *
FROM Customers
WHERE Row_Numbr > @Lower_Bound--
AND Row_Numbr <= @Upper_Bound -- This is suppose to …Run Code Online (Sandbox Code Playgroud) struct Node
{
int a;
int b;
};
Node node;
node.a = 2;
node.b = 3;
map<int, int> aa;
aa[1]=1; // OK.
map<Node, int> bb;
bb[node]=1; // Compile error.
Run Code Online (Sandbox Code Playgroud)
当我尝试将结构映射到int时,它给了我一个编译错误.为什么?谢谢!
我正在使用以下代码发送简单的HTTP请求:
try
{
Socket s = new Socket ();
s.bind (new InetSocketAddress (ipFrom, 0));
s.connect (new InetSocketAddress (ipTo, 80), 1000);
PrintWriter writer = new PrintWriter (s.getOutputStream ());
BufferedReader reader = new BufferedReader (new InputStreamReader (s.getInputStream ()));
writer.print ("GET " + szUrl + " HTTP/1.0\r\n\r\n");
writer.flush ();
s .close ();
reader.close ();
writer.close ();
}
Run Code Online (Sandbox Code Playgroud)
但是,正如您所看到的,我不发送自定义HEADER.我应该添加什么来发送自定义HEADER?
干杯,
Christophe OLIVIER
我的用户通过http://code.google.com/p/android-remote-stacktrace/向我发送未处理的异常
我收到以下信息,但不知道这意味着什么。
java.lang.IndexOutOfBoundsException: getChars (7 ... 0) has end before start
at android.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:935)
at android.text.SpannableStringBuilder.getChars(SpannableStringBuilder.java:847)
at android.text.TextUtils.getChars(TextUtils.java:69)
at android.text.SpannableStringBuilder.<init>(SpannableStringBuilder.java:59)
at android.text.SpannableStringBuilder.subSequence(SpannableStringBuilder.java:839)
at android.widget.TextView.extractTextInternal(TextView.java:4541)
at android.widget.TextView.reportExtractedText(TextView.java:4580)
at android.widget.TextView.finishBatchEdit(TextView.java:4723)
at android.widget.TextView.endBatchEdit(TextView.java:4705)
at com.android.internal.widget.EditableInputConnection.endBatchEdit(EditableInputConnection.java:54)
at android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:586)
at android.view.inputmethod.BaseInputConnection.commitText(BaseInputConnection.java:174)
at com.android.internal.widget.EditableInputConnection.commitText(EditableInputConnection.java:120)
at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:231)
at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:57)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4338)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud) 我有一个对象,我对它进行了一些更改,但我不想保存它们,我想要'旧'值.
我尝试过:
[managedObjectContext rollback];
[managedObjectContext redo];
[managedObjectContext reset];
Run Code Online (Sandbox Code Playgroud)
并且它们似乎都没有工作......
NSLog(@"current: %@",ingredient.name); // ===> bread
[ingredient setName:@"test new data"];
NSLog(@"new: %@",ingredient.name); // ===> test new data
[managedObjectContext rollback];
[managedObjectContext redo];
[managedObjectContext reset];
NSLog(@"current: %@",ingredient.name); // ===> test new data
// I want again ===> bread
Run Code Online (Sandbox Code Playgroud)
我应该再次重新获取对象吗?
谢谢,
河
如何创建状态栏中使用的黑/白图标?
我相信它与图像的alpha通道有关,但我需要找到如何在photoshop或gimp中做到这一点.
我需要测量其他Javascript事件绑定的性能开销(使用jQuery live),开销可能会增加CPU负载,并且很难从执行时间分析中注意到.
如何衡量Javascript应用程序的两个不同版本之间的CPU负载差异?
performance ×2
.net ×1
algorithm ×1
android ×1
c# ×1
c++ ×1
checksum ×1
cocoa ×1
containers ×1
core-data ×1
dictionary ×1
events ×1
f# ×1
httprequest ×1
iphone ×1
java ×1
javascript ×1
jquery ×1
md5 ×1
pagination ×1
sockets ×1
sql-server ×1
stdmap ×1
stl ×1
t-sql ×1
tuples ×1
types ×1