I'm trying to test the new QgsTask and QgsTaskManager, I found some examples in [the PullRequest in github][1]. I modified it slightly and added a print(i) in the code bellow:

    from qgis.core import QgsTask, QgsTaskManager
    from time import sleep
    import random
    def run1(task,time):
       wait_time = time / 100.0
       sum = 0
       iterations = 0
       for i in range(101):
           sleep(wait_time)
           print(i)
            # use task.setProgress to report progress
            task.setProgress( i )
            sum += random.randint(0,100)
            iterations += 1
            # check task.isCancelled() to handle cancellation
            if task.isCancelled():
                stopped()
                return
            # raise expections to abort task
            #if random.randint(0,100) == 7:
            #    raise Exception('bad value!')
        # use task object to store results of calculations or operations
        task.result = [sum,iterations]

    task=QgsTask.fromFunction('waste cpu', run1, 2)
    mgr=QgsTaskManager()
    mgr.addTask(task)
    task.isFinished()

When I run this code in the Python console it returns 0 two times and then nothing more. I expected 101 printouts (0-100)? Afterwards I tried to see if it was finished with trying to call task.isFinished(), hence that gave me a `RuntimeError: wrapped C/C++ object of type QgsTaskWrapper has been deleted`.

In the end I would like use one QgsTask to run a time consuming script and one QgsTask to run a dialog (maybe a progressbar) telling the user that script is still running..  

Any suggestion what I'm doing/thinking wrong or were to look at other examples?

EDIT:
The problem was not only that there was two "L" in isCancel and start of QgsTaskManager, it was also that I tried to use print() within QgsTask. So I tried another approach with two GUIs that I tried in [this repo][2].

EDIT:
I updated the github Master repo using a QtTimer, still no 100% success, hence the branch without QgsTask is working as expected. But I really want to understand how QgsTask is to be implemented..



  [1]: https://github.com/qgis/QGIS/pull/3004
  [2]: https://github.com/axelande/QgisTest