You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							39 lines
						
					
					
						
							713 B
						
					
					
				
			
		
		
	
	
							39 lines
						
					
					
						
							713 B
						
					
					
				| 'use strict'
 | |
| 
 | |
| var reusify = require('../')
 | |
| var fib = require('./fib')
 | |
| var instance = reusify(MyObject)
 | |
| var max = 100000000
 | |
| var start = Date.now()
 | |
| 
 | |
| function reuseNoCodeFunction () {
 | |
|   var obj = instance.get()
 | |
|   obj.num = 100
 | |
|   obj.func()
 | |
|   obj.num = 0
 | |
|   instance.release(obj)
 | |
| }
 | |
| 
 | |
| function MyObject () {
 | |
|   this.next = null
 | |
|   var that = this
 | |
|   this.num = 0
 | |
|   this.func = function () {
 | |
|     /* eslint no-constant-condition: "off" */
 | |
|     if (null) {
 | |
|       // do nothing
 | |
|     } else {
 | |
|       fib(that.num)
 | |
|     }
 | |
|   }
 | |
| }
 | |
| 
 | |
| for (var i = 0; i < max; i++) {
 | |
|   reuseNoCodeFunction()
 | |
| }
 | |
| 
 | |
| var time = Date.now() - start
 | |
| console.log('Total time', time)
 | |
| console.log('Total iterations', max)
 | |
| console.log('Iteration/s', max / time * 1000)
 |