Potentially. It depends on what you are doing inside the callbacks. If you are just recording things like the current incumbent value or number of nodes so far, or doing basic branching decisions, probably not. If you are solving some complicated subproblem each time the callback is invoked, potentially yes. If you are doing something complicated in the callback, but you are doing it using third-party libraries, then it is at least in part a question of how fast the libraries are. For instance, in one project I may need to do matrix decompositions (QR, SVD) in a callback. If I were writing my own matrix decomposition code (and if I knew what I was doing), C or C++ might be measurably faster than Java, which might be faster than Python. On the other hand, if I'm calling a library, then using Java to call a library coded in C with a Java wrapper is not much slower than calling the same library from C or C++.
You need to ask yourself where most of your CPU cycles will be spent. If they will be spent by CPLEX crunching an LP/MIP or by some other library, I don't think you need to worry about which language you are using. The stuff your code typically does (setting up models, retrieving solutions, ...) tends to be a small portion of the overall run time. Usually.
#CPLEXOptimizers#DecisionOptimization