public static void main()

in src/main/java/com/company/demoapplication/Main.java [52:84]


    public static void main(String[] args) throws Exception {
        /*
          This demo application can be configured to demonstrate some common performance issues,
          for example expensive logging or forgetting to re-use serializers.
         */
        if (args.length > 0 && args[0].equals("with-issues")) {
            logger().info("Running with performance issues.");

            withIssues = true;
            reuseMapper = false;
            reuseLogger = false;
        } else if (args.length > 0 && args[0].equals("without-issues")) {
            logger().info("Running without performance issues.");

            withIssues = false;
            reuseMapper = true;
            reuseLogger = true;
        } else {
            logger().error("Invalid arguments: '" + String.join(" ", args) + "'. Valid arguments are: with-issues or without-issues.");
            System.exit(-1);
        }

        // Publisher
        ScheduledExecutorService publisherScheduler = Executors.newScheduledThreadPool(1);
        publisherScheduler.scheduleWithFixedDelay(() -> TaskPublisher.publishImageTransformTask(10), 0, 5, TimeUnit.SECONDS);

        // Listener
        ImageProcessor imageProcessor = new ImageProcessor();

        while (true) {
            executor().submit(imageProcessor::run).get();
        }
    }