kopia lustrzana https://github.com/viljoviitanen/pako
updated zlib benchmark to use streams
rodzic
ae49f96738
commit
ff0a4c0c50
|
@ -5,6 +5,35 @@ var zlib = require('zlib');
|
|||
exports.async = true;
|
||||
|
||||
exports.run = function(data, callback) {
|
||||
var buffer = new Buffer(data);
|
||||
zlib.deflate(buffer, callback);
|
||||
//zlib.deflate(new Buffer(data), callback);
|
||||
|
||||
var zlibStream = zlib.createDeflate({
|
||||
chunkSize: 1*1024*1024/*,
|
||||
level: 6*/
|
||||
});
|
||||
var buffers = [], nread = 0;
|
||||
|
||||
|
||||
zlibStream.on('error', function(err) {
|
||||
zlibStream.removeAllListeners();
|
||||
zlibStream=null;
|
||||
callback(err);
|
||||
});
|
||||
|
||||
zlibStream.on('data', function(chunk) {
|
||||
buffers.push(chunk);
|
||||
nread += chunk.length;
|
||||
});
|
||||
|
||||
zlibStream.on('end', function() {
|
||||
zlibStream.removeAllListeners();
|
||||
zlibStream=null;
|
||||
|
||||
var buffer = Buffer.concat(buffers);
|
||||
|
||||
callback(null);
|
||||
});
|
||||
|
||||
zlibStream.write(new Buffer(data));
|
||||
zlibStream.end();
|
||||
}
|
||||
|
|
Ładowanie…
Reference in New Issue