コード例 #1
0
ファイル: TestForkedEvaluator.cs プロジェクト: zzy092/npoi
        public void TestBasic()
        {
            IWorkbook wb = CreateWorkbook();

            // The stability classifier is useful to reduce memory consumption of caching logic
            IStabilityClassifier stabilityClassifier = new StabilityClassifier();

            ForkedEvaluator fe1 = ForkedEvaluator.Create(wb, stabilityClassifier, null);
            ForkedEvaluator fe2 = ForkedEvaluator.Create(wb, stabilityClassifier, null);

            // fe1 and fe2 can be used concurrently on separate threads

            fe1.UpdateCell("Inputs", 0, 0, new NumberEval(4.0));
            fe1.UpdateCell("Inputs", 0, 1, new NumberEval(1.1));

            fe2.UpdateCell("Inputs", 0, 0, new NumberEval(1.2));
            fe2.UpdateCell("Inputs", 0, 1, new NumberEval(2.0));

            Assert.AreEqual(18.9, ((NumberEval)fe1.Evaluate("Calculations", 0, 0)).NumberValue, 0.0);
            Assert.AreEqual(4.0, ((NumberEval)fe2.Evaluate("Calculations", 0, 0)).NumberValue, 0.0);
            fe1.UpdateCell("Inputs", 0, 0, new NumberEval(3.0));
            Assert.AreEqual(13.9, ((NumberEval)fe1.Evaluate("Calculations", 0, 0)).NumberValue, 0.0);

            wb.Close();
        }
コード例 #2
0
ファイル: TestForkedEvaluator.cs プロジェクト: ctddjyds/npoi
        public void TestBasic()
        {
            HSSFWorkbook wb = CreateWorkbook();

            // The stability classifier is useful to reduce memory consumption of caching logic
            IStabilityClassifier stabilityClassifier = new StabilityClassifier();

            ForkedEvaluator fe1 = ForkedEvaluator.Create(wb, stabilityClassifier, null);
            ForkedEvaluator fe2 = ForkedEvaluator.Create(wb, stabilityClassifier, null);

            // fe1 and fe2 can be used concurrently on separate threads

            fe1.UpdateCell("Inputs", 0, 0, new NumberEval(4.0));
            fe1.UpdateCell("Inputs", 0, 1, new NumberEval(1.1));

            fe2.UpdateCell("Inputs", 0, 0, new NumberEval(1.2));
            fe2.UpdateCell("Inputs", 0, 1, new NumberEval(2.0));

            Assert.AreEqual(18.9, ((NumberEval)fe1.Evaluate("Calculations", 0, 0)).NumberValue, 0.0);
            Assert.AreEqual(4.0, ((NumberEval)fe2.Evaluate("Calculations", 0, 0)).NumberValue, 0.0);
            fe1.UpdateCell("Inputs", 0, 0, new NumberEval(3.0));
            Assert.AreEqual(13.9, ((NumberEval)fe1.Evaluate("Calculations", 0, 0)).NumberValue, 0.0);
        }