From 639d964adf5567c94e3bf45db65281bbb029d521 Mon Sep 17 00:00:00 2001
From: Vytor Calixto <vytorcalixto@gmail.com>
Date: Mon, 19 Jun 2017 10:47:21 -0300
Subject: [PATCH] Start workerpool feature

---
 package.json           |  3 ++-
 src/libs/routes/api.js | 20 ++++++++++++++++++++
 2 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/package.json b/package.json
index 8a8785c3..91a06146 100644
--- a/package.json
+++ b/package.json
@@ -37,7 +37,8 @@
     "nconf": "^0.8.x",
     "passport": "^0.3.2",
     "squel": "^5.4.2",
-    "winston": "^2.2.0"
+    "winston": "^2.2.0",
+    "workerpool": "^2.2.1"
   },
   "license": "MIT",
   "devDependencies": {
diff --git a/src/libs/routes/api.js b/src/libs/routes/api.js
index 2e7c9a3e..898d565c 100644
--- a/src/libs/routes/api.js
+++ b/src/libs/routes/api.js
@@ -6,6 +6,8 @@ const libs = `${process.cwd()}/libs`;
 
 const config = require(`${libs}/config`);
 
+const log = require(`${libs}/log`)(module);
+
 const classes = require('./class');
 
 const cache = require('apicache').options({ debug: config.debug, statusCodes: {include: [200]} }).middleware;
@@ -30,6 +32,24 @@ const classroom = require('./classroom');
 
 const teacher = require('./teacher');
 
+const workerpool = require('workerpool');
+
+const pool = workerpool.pool();
+
+function add(a, b) {
+    return a+b;
+}
+
+api.get('/add', (req, res) => {
+    pool.exec(add, [3,4])
+        .then((result) => {
+            log.debug('result');
+            log.debug(result);
+            pool.clear();
+        });
+    res.json({msg: 'Está sendo feito'});
+});
+
 api.get('/', (req, res) => {
     res.json({ msg: 'SimCAQ API is running' });
 });
-- 
GitLab