index.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. var log = require('hlogger').createLogger('jspak.Config');
  2. class BigObject {
  3. constructor() {
  4. this.temp = new Array(1e5);
  5. }
  6. }
  7. class BigObjectContainer {
  8. constructor() {
  9. this.holder = [];
  10. }
  11. }
  12. // Can be inside the thing too
  13. //var memTest = [];
  14. var activator = {
  15. start(context) {
  16. var memTest = new BigObjectContainer();
  17. this.memTest = memTest;
  18. for(var i = 0;i<50;i++) {
  19. this.increaseMemory();
  20. }
  21. context.on('core-shell:cmd:ls',(req,res,e) => {
  22. e.wait();
  23. context.with(["mod1","prettyjson"],(mod1,pj) => {
  24. log.info("Doing ls, we retrieved stuff");
  25. log.info(pj.render({name:'test'}));
  26. });
  27. e.done();
  28. });
  29. var ocount = 1000;
  30. var count = ocount;
  31. for(var i = 0;i<ocount;i++) {
  32. context.on('core-shell:cmd:mtest',(cmd,e) => {
  33. e.wait();
  34. if(count== ocount) {
  35. context.emit("time");
  36. }
  37. count--;
  38. if(count == 0) {
  39. console.log("Everything called");
  40. count = ocount;
  41. context.emit("timeEnd");
  42. }
  43. e.done();
  44. });
  45. }
  46. context.on("time",() => {
  47. console.time("beef");
  48. });
  49. context.on("timeEnd",() => {
  50. console.timeEnd("beef");
  51. });
  52. /*this.interval = setInterval(() => {
  53. this.increaseMemory();
  54. },100);*/
  55. },
  56. stop(context) {
  57. //clearInterval(this.interval);
  58. //this.memTest = null;
  59. },
  60. increaseMemory() {
  61. this.memTest.holder.push(new BigObject());
  62. // console.log("Config memTest: " + this.memTest.holder.length + " " + process.memoryUsage().heapUsed);
  63. //memTest.push(new Array(1e5));
  64. //memTest.push(new BigObject());
  65. //console.log("Config memTest: " + memTest.length + " " + process.memoryUsage().heapUsed);
  66. }
  67. }
  68. module.exports.bundleActivator = activator;